Skip to content

Commit 5f1a104

Browse files
committed
oauth refresh
1 parent 29ca4a4 commit 5f1a104

4 files changed

Lines changed: 26 additions & 4 deletions

File tree

unstructured_ingest/processes/connectors/fsspec/gcs.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,12 @@ class GcsAccessConfig(FsspecAccessConfig):
7272
default=None, description=service_account_key_description
7373
)
7474
token: Union[str, dict, None] = Field(init=False, default=None)
75+
refresh_token: Optional[str] = Field(
76+
default=None,
77+
description="OAuth 2.0 refresh token for obtaining new access tokens. "
78+
"Long-lived; used by the platform to refresh expired access tokens "
79+
"before each job run.",
80+
)
7581

7682
def model_post_init(self, __context: Any) -> None:
7783
ALLOWED_AUTH_VALUES = "google_default", "cache", "anon", "browser", "cloud"

unstructured_ingest/processes/connectors/google_drive.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,12 @@ class GoogleDriveAccessConfig(AccessConfig):
6969
"Obtain via Google OAuth Playground or your OAuth application. "
7070
"Tokens typically expire after 1 hour.",
7171
)
72+
refresh_token: Optional[str] = Field(
73+
default=None,
74+
description="OAuth 2.0 refresh token for obtaining new access tokens. "
75+
"Long-lived; used by the platform to refresh expired access tokens "
76+
"before each job run.",
77+
)
7278

7379
def model_post_init(self, __context: Any) -> None:
7480
has_service_account = (

unstructured_ingest/processes/connectors/onedrive.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,15 @@ class OnedriveAccessConfig(AccessConfig):
6060
default=None,
6161
description=(
6262
"OAuth 2.0 access token for delegated user authentication. "
63-
"Tokens typically expire after ~1 hour; this connector does not "
64-
"refresh tokens."
63+
"Tokens typically expire after ~1 hour."
6564
),
6665
)
66+
refresh_token: Optional[str] = Field(
67+
default=None,
68+
description="OAuth 2.0 refresh token for obtaining new access tokens. "
69+
"Long-lived; used by the platform to refresh expired access tokens "
70+
"before each job run.",
71+
)
6772

6873
def model_post_init(self, __context: Any) -> None:
6974
# Use truthiness so empty strings (e.g. from unset env vars) are treated

unstructured_ingest/processes/connectors/outlook.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,15 @@ class OutlookAccessConfig(AccessConfig):
4545
default=None,
4646
description=(
4747
"OAuth 2.0 access token for delegated user authentication. "
48-
"Tokens typically expire after ~1 hour; this connector does not "
49-
"refresh tokens."
48+
"Tokens typically expire after ~1 hour."
5049
),
5150
)
51+
refresh_token: Optional[str] = Field(
52+
default=None,
53+
description="OAuth 2.0 refresh token for obtaining new access tokens. "
54+
"Long-lived; used by the platform to refresh expired access tokens "
55+
"before each job run.",
56+
)
5257

5358
def model_post_init(self, __context: Any) -> None:
5459
# Use truthiness so empty strings (e.g. from unset env vars) are treated

0 commit comments

Comments
 (0)