@@ -441,6 +441,30 @@ class AssertViewUUID(BaseModel):
441441 uuid : str
442442
443443
444+ class AzureCredentials (BaseModel ):
445+ account_name : Optional [str ] = Field (None , alias = 'account-name' )
446+ account_key : Optional [str ] = Field (None , alias = 'account-key' )
447+ token : Optional [str ] = None
448+
449+
450+ class AwsCredentials (BaseModel ):
451+ access_key_id : str = Field (..., alias = 'access-key-id' )
452+ secret_access_key : str = Field (..., alias = 'secret-access-key' )
453+ token : Optional [str ] = None
454+ expires_at_ms : Optional [int ] = Field (None , alias = 'expires-at-ms' )
455+
456+
457+ class GcsCredentials (BaseModel ):
458+ token : str
459+ expires_at_ms : Optional [int ] = Field (None , alias = 'expires-at-ms' )
460+
461+
462+ class Credentials (BaseModel ):
463+ aws : Optional [AwsCredentials ] = None
464+ azure : Optional [AzureCredentials ] = None
465+ gcs : Optional [GcsCredentials ] = None
466+
467+
444468class RegisterTableRequest (BaseModel ):
445469 name : str
446470 metadata_location : str = Field (..., alias = 'metadata-location' )
@@ -1113,6 +1137,11 @@ class LoadTableResult(BaseModel):
11131137 - `s3.session-token`: if present, this value should be used for as the session token
11141138 - `s3.remote-signing-enabled`: if `true` remote signing should be performed as described in the `s3-signer-open-api.yaml` specification
11151139
1140+ ## Credentials
1141+
1142+ Credentials for Azure / AWS / GCS are provided through the `credentials` field. Clients should first check whether the
1143+ respective credentials exist in the `credentials` field before checking the `config` for credentials.
1144+
11161145 """
11171146
11181147 metadata_location : Optional [str ] = Field (
@@ -1121,6 +1150,7 @@ class LoadTableResult(BaseModel):
11211150 description = 'May be null if the table is staged as part of a transaction' ,
11221151 )
11231152 metadata : TableMetadata
1153+ credentials : Optional [Credentials ] = None
11241154 config : Optional [Dict [str , str ]] = None
11251155
11261156
@@ -1183,10 +1213,16 @@ class LoadViewResult(BaseModel):
11831213
11841214 - `token`: Authorization bearer token to use for view requests if OAuth2 security is enabled
11851215
1216+ ## Credentials
1217+
1218+ Credentials for Azure / AWS / GCS are provided through the `credentials` field. Clients should first check whether the
1219+ respective credentials exist in the `credentials` field before checking the `config` for credentials.
1220+
11861221 """
11871222
11881223 metadata_location : str = Field (..., alias = 'metadata-location' )
11891224 metadata : ViewMetadata
1225+ credentials : Optional [Credentials ] = None
11901226 config : Optional [Dict [str , str ]] = None
11911227
11921228
0 commit comments