Skip to content

Get a provider capability matrix

GET
/v1/providers/{provider}
curl --request GET \
--url https://api.trustysweep.com/v1/providers/google_gmail
provider
required
string
Allowed values: google_gmail google_drive microsoft_outlook microsoft_onedrive dropbox apple_local s3_compatible trusty_vault simulated

OK

Media typeapplication/json
object
id
required
string
Allowed values: google_gmail google_drive microsoft_outlook microsoft_onedrive dropbox apple_local s3_compatible trusty_vault simulated
name
required
string
family
string
kind
string
capabilities
required

Machine-readable capability matrix an adapter publishes. Parity is never faked.

object
provider
required
string
Allowed values: google_gmail google_drive microsoft_outlook microsoft_onedrive dropbox apple_local s3_compatible trusty_vault simulated
family
required
string
Allowed values: google microsoft dropbox apple object_store trusty simulated
kind
required
string
Allowed values: inbox cloud_drive device_storage photo_library object_store revenue_source
version
required
string
read
required
object
supported
required
boolean
notes
string
write
required
object
supported
required
boolean
notes
string
list
required
object
supported
required
boolean
notes
string
delta
required
object
supported
required
boolean
notes
string
quota
required
object
supported
required
boolean
notes
string
metadata
required
object
supported
required
boolean
notes
string
permissions
required
object
supported
required
boolean
notes
string
trash
required
object
supported
required
boolean
notes
string
permanent_delete
required
object
supported
required
boolean
notes
string
restore
required
object
supported
required
boolean
notes
string
copy
required
object
supported
required
boolean
notes
string
move
required
object
supported
required
boolean
notes
string
external_destination
required
object
supported
required
boolean
notes
string
change_feed
required
object
supported
required
boolean
notes
string
known_lossiness
required
Array<string>
authorization
required
object
type
required
string
Allowed values: oauth2 api_key aws_sigv4 none local_user_grant
scopesByOperation
object
key
additional properties
Array<string>
incrementalConsent
boolean
tokenCustody
string
Allowed values: sweep user_device none
limits
object
maxObjectBytes
integer
pageSize
integer
rateLimitNotes
string
trashRetentionDays
integer
quotaSemantics
object
sharedAcross
Array<string>
Allowed values: google_gmail google_drive microsoft_outlook microsoft_onedrive dropbox apple_local s3_compatible trusty_vault simulated
reclaimOnTrash
string
Allowed values: immediate after_empty_trash delayed unknown
connectable
required

False when the provider’s client credentials are not configured in this deployment.

boolean
registry_state
required
string
Allowed values: TRUSTY_BUILT TRUSTY_VERIFIED THIRD_PARTY_VERIFIED PRIVATE DISABLED
Example
{
"id": "google_gmail",
"capabilities": {
"provider": "google_gmail",
"family": "google",
"kind": "inbox",
"authorization": {
"type": "oauth2",
"tokenCustody": "sweep"
},
"quotaSemantics": {
"sharedAcross": [
"google_gmail"
],
"reclaimOnTrash": "immediate"
}
},
"registry_state": "TRUSTY_BUILT"
}
RateLimit-Limit
integer

Requests allowed in the current window.

RateLimit-Remaining
integer

Requests remaining in the current window.

RateLimit-Reset
integer

Seconds until the window resets.

Validation failed

Media typeapplication/problem+json

RFC 9457 problem details.

object
type
required
title
required
string
status
required
integer
detail
string
code
required

Machine-readable error code from errors.json

string
request_id
required
string
errors
Array<object>
object
path
required
string
message
required
string
Examplegenerated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"path": "example",
"message": "example"
}
]
}

Unauthenticated

Media typeapplication/problem+json

RFC 9457 problem details.

object
type
required
title
required
string
status
required
integer
detail
string
code
required

Machine-readable error code from errors.json

string
request_id
required
string
errors
Array<object>
object
path
required
string
message
required
string
Examplegenerated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"path": "example",
"message": "example"
}
]
}

Forbidden / action denied / step-up required

Media typeapplication/problem+json

RFC 9457 problem details.

object
type
required
title
required
string
status
required
integer
detail
string
code
required

Machine-readable error code from errors.json

string
request_id
required
string
errors
Array<object>
object
path
required
string
message
required
string
Examplegenerated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"path": "example",
"message": "example"
}
]
}

Not found

Media typeapplication/problem+json

RFC 9457 problem details.

object
type
required
title
required
string
status
required
integer
detail
string
code
required

Machine-readable error code from errors.json

string
request_id
required
string
errors
Array<object>
object
path
required
string
message
required
string
Examplegenerated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"path": "example",
"message": "example"
}
]
}

Rate limited

Media typeapplication/problem+json

RFC 9457 problem details.

object
type
required
title
required
string
status
required
integer
detail
string
code
required

Machine-readable error code from errors.json

string
request_id
required
string
errors
Array<object>
object
path
required
string
message
required
string
Examplegenerated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"path": "example",
"message": "example"
}
]
}
Retry-After
integer

Seconds to wait before retrying.

RateLimit-Limit
integer

Requests allowed in the current window.

RateLimit-Remaining
integer

Requests remaining in the current window.

RateLimit-Reset
integer

Seconds until the window resets.

Internal error

Media typeapplication/problem+json

RFC 9457 problem details.

object
type
required
title
required
string
status
required
integer
detail
string
code
required

Machine-readable error code from errors.json

string
request_id
required
string
errors
Array<object>
object
path
required
string
message
required
string
Examplegenerated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"path": "example",
"message": "example"
}
]
}