OAuth providers
OAuth Providers Service API enables management of external OAuth providers allowing DataRobot users to connect their workflows with external provider resources.
Delete OAuth Provider Authorization by authorized provider ID
Operation path: DELETE /api/v2/externalOAuth/authorizedProviders/{authorizedProviderId}/
Revoke an OAuth Provider Authorization by ID.
Parameters
| Name |
In |
Type |
Required |
Description |
| authorizationID |
path |
string |
true |
OAuth Provider Authorization ID |
Example responses
404 Response
{
"properties": {
"errorFields": {
"items": {
"properties": {
"message": {
"type": "string"
},
"name": {
"type": "string"
}
},
"type": "object"
},
"type": "array",
"uniqueItems": false
},
"message": {
"type": "string"
}
},
"type": "object"
}
Responses
Acquire OAuth Provider Authorization's Access Token by authorized provider ID
Operation path: POST /api/v2/externalOAuth/authorizedProviders/{authorizedProviderId}/accessToken/
Acquire an access token for the OAuth Provider Authorization.
Parameters
| Name |
In |
Type |
Required |
Description |
| authorizationID |
path |
string |
true |
OAuth Provider Authorization ID |
Example responses
201 Response
{
"properties": {
"accessToken": {
"type": "string"
},
"authorizedOauthProvider": {
"properties": {
"createdAt": {
"format": "date-time",
"type": "string"
},
"credentialId": {
"type": "string"
},
"id": {
"type": "string"
},
"oauthClientId": {
"type": "string"
},
"orgId": {
"type": "string"
},
"provider": {
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"refreshTokenExpiresAt": {
"format": "date-time",
"type": "string"
},
"status": {
"enum": [
"active",
"expired",
"invalidOAuthClient",
"invalidProviderState"
],
"type": "string",
"x-enum-varnames": [
"AuthzStatusActive",
"AuthzStatusExpired",
"AuthzStatusInvalidOAuthClient",
"AuthzInactiveProviderState"
]
},
"userId": {
"type": "string"
}
},
"type": "object"
},
"expiresAt": {
"type": "string"
}
},
"type": "object"
}
Responses
Operation path: GET /api/v2/externalOAuth/authorizedProviders/{authorizedProviderId}/userinfo/
Retrieve user information from the OAuth Provider using the previously obtained authorization.
Parameters
| Name |
In |
Type |
Required |
Description |
| authorizationID |
path |
string |
true |
OAuth Provider Authorization ID |
Example responses
200 Response
{
"properties": {
"description": {
"type": "string"
},
"email": {
"type": "string"
},
"familyName": {
"type": "string"
},
"givenName": {
"type": "string"
},
"locale": {
"type": "string"
},
"name": {
"type": "string"
},
"nickName": {
"type": "string"
},
"picture": {
"type": "string"
},
"raw": {
"additionalProperties": {},
"type": "object"
},
"sub": {
"type": "string"
}
},
"type": "object"
}
Responses
Get OAuth Provider Job by job ID
Operation path: GET /api/v2/externalOAuth/jobs/{jobId}/
Retrieve the status of an OAuth Provider Job by ID.
Parameters
| Name |
In |
Type |
Required |
Description |
| jobID |
path |
string |
true |
Job ID |
Example responses
200 Response
{
"properties": {
"details": {
"description": "Details is a slice of key-value pairs containing additional information about the job.\nFor example, for a delete provider job, it may include the provider ID and connected authorization IDs.\nExample usage:\nDetails = []struct {\n Name: \"provider_id\",\n Value: \"1234\",\n},\n{\n Name: \"authorization_ids\",\n Value: []string{\"1234\", \"5678\"},\n}",
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"type": "object"
},
"type": "array",
"uniqueItems": false
},
"finishedAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"startedAt": {
"format": "date-time",
"type": "string"
},
"status": {
"enum": [
"PENDING",
"RUNNING",
"COMPLETED",
"ERROR"
],
"type": "string",
"x-enum-varnames": [
"JobStatusPending",
"JobStatusRunning",
"JobStatusCompleted",
"JobStatusError"
]
},
"type": {
"enum": [
"DELETE_PROVIDER",
"STATS"
],
"type": "string",
"x-enum-varnames": [
"JobTypeDeleteProvider",
"JobTypeStats"
]
}
},
"type": "object"
}
Responses
List OAuth Providers
Operation path: GET /api/v2/externalOAuth/providers/
Returns a list of all available OAuth providers.
Parameters
| Name |
In |
Type |
Required |
Description |
| ids |
query |
array[string] |
false |
none |
| types |
query |
array[string] |
false |
none |
| host |
query |
array[string] |
false |
none |
| orderBy |
query |
string |
false |
none |
Enumerated Values
| Parameter |
Value |
| types |
[github, gitlab, bitbucket, google, box, microsoft] |
| orderBy |
[createdAt, -createdAt] |
Example responses
200 Response
{
"properties": {
"data": {
"items": {
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"type": "array",
"uniqueItems": false
}
},
"type": "object"
}
Responses
Create OAuth Provider
Operation path: POST /api/v2/externalOAuth/providers/
Creates a new OAuth provider.
Body parameter
{
"properties": {
"clientId": {
"type": "string"
},
"clientSecret": {
"type": "string"
},
"name": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
}
},
"required": [
"clientId",
"clientSecret",
"name",
"type"
],
"type": "object"
}
Parameters
Example responses
201 Response
{
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
}
Responses
OAuth Provider Callback
Operation path: POST /api/v2/externalOAuth/providers/callback/
Handles the OAuth2 callback, exchanges authorization code for an access/refresh tokens, and creates a new.
Body parameter
{
"properties": {
"code": {
"type": "string"
},
"providerId": {
"type": "string"
},
"state": {
"type": "string"
}
},
"required": [
"code",
"providerId",
"state"
],
"type": "object"
}
Parameters
Example responses
200 Response
{
"properties": {
"authorizedProvider": {
"properties": {
"createdAt": {
"format": "date-time",
"type": "string"
},
"credentialId": {
"type": "string"
},
"id": {
"type": "string"
},
"oauthClientId": {
"type": "string"
},
"orgId": {
"type": "string"
},
"provider": {
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"refreshTokenExpiresAt": {
"format": "date-time",
"type": "string"
},
"status": {
"enum": [
"active",
"expired",
"invalidOAuthClient",
"invalidProviderState"
],
"type": "string",
"x-enum-varnames": [
"AuthzStatusActive",
"AuthzStatusExpired",
"AuthzStatusInvalidOAuthClient",
"AuthzInactiveProviderState"
]
},
"userId": {
"type": "string"
}
},
"type": "object"
},
"userInfo": {
"properties": {
"description": {
"type": "string"
},
"email": {
"type": "string"
},
"familyName": {
"type": "string"
},
"givenName": {
"type": "string"
},
"locale": {
"type": "string"
},
"name": {
"type": "string"
},
"nickName": {
"type": "string"
},
"picture": {
"type": "string"
},
"raw": {
"additionalProperties": {},
"type": "object"
},
"sub": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
Responses
Delete OAuth Provider by provider ID
Operation path: DELETE /api/v2/externalOAuth/providers/{providerID}/
Initiates a job to delete an OAuth provider by its ID, along with all associated resources.
Parameters
| Name |
In |
Type |
Required |
Description |
| providerId |
path |
string |
true |
OAuth Provider ID |
Example responses
202 Response
{
"properties": {
"location": {
"type": "string"
}
},
"type": "object"
}
Responses
Get OAuth Provider by provider ID
Operation path: GET /api/v2/externalOAuth/providers/{providerID}/
Retrieves an OAuth provider by its ID.
Parameters
| Name |
In |
Type |
Required |
Description |
| providerId |
path |
string |
true |
OAuth Provider ID |
Example responses
200 Response
{
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
}
Responses
Update OAuth Provider by provider ID
Operation path: PATCH /api/v2/externalOAuth/providers/{providerID}/
Updates an existing OAuth provider by its ID.
Body parameter
{
"properties": {
"clientSecret": {
"type": "string"
},
"name": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
}
},
"type": "object"
}
Parameters
| Name |
In |
Type |
Required |
Description |
| providerId |
path |
string |
true |
OAuth Provider ID |
| body |
body |
provider.UpdateProviderRequest |
true |
Update provider request body |
Example responses
200 Response
{
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
}
Responses
Authorize OAuth Provider by provider ID
Operation path: POST /api/v2/externalOAuth/providers/{providerId}/authorize/
Returns a redirect URL to the OAuth2 provider's authorization page to get user's consent for accessing their data.
Parameters
| Name |
In |
Type |
Required |
Description |
| providerId |
path |
string |
true |
OAuth Provider ID |
| state |
query |
string |
false |
none |
| redirect_uri |
query |
string |
false |
none |
| skip_consent |
query |
boolean |
false |
Whether to skip the consent screen |
Example responses
200 Response
{
"properties": {
"redirectUrl": {
"type": "string"
},
"state": {
"type": "string"
}
},
"type": "object"
}
Responses
Schemas
handler.AuthorizeProviderResponse
{
"properties": {
"redirectUrl": {
"type": "string"
},
"state": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| redirectUrl |
string |
false |
|
none |
| state |
string |
false |
|
none |
handler.CallbackResponse
{
"properties": {
"authorizedProvider": {
"properties": {
"createdAt": {
"format": "date-time",
"type": "string"
},
"credentialId": {
"type": "string"
},
"id": {
"type": "string"
},
"oauthClientId": {
"type": "string"
},
"orgId": {
"type": "string"
},
"provider": {
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"refreshTokenExpiresAt": {
"format": "date-time",
"type": "string"
},
"status": {
"enum": [
"active",
"expired",
"invalidOAuthClient",
"invalidProviderState"
],
"type": "string",
"x-enum-varnames": [
"AuthzStatusActive",
"AuthzStatusExpired",
"AuthzStatusInvalidOAuthClient",
"AuthzInactiveProviderState"
]
},
"userId": {
"type": "string"
}
},
"type": "object"
},
"userInfo": {
"properties": {
"description": {
"type": "string"
},
"email": {
"type": "string"
},
"familyName": {
"type": "string"
},
"givenName": {
"type": "string"
},
"locale": {
"type": "string"
},
"name": {
"type": "string"
},
"nickName": {
"type": "string"
},
"picture": {
"type": "string"
},
"raw": {
"additionalProperties": {},
"type": "object"
},
"sub": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
Properties
handler.DeleteOAuthProviderResponse
{
"properties": {
"location": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| location |
string |
false |
|
none |
handler.GetAccessTokenResponse
{
"properties": {
"accessToken": {
"type": "string"
},
"authorizedOauthProvider": {
"properties": {
"createdAt": {
"format": "date-time",
"type": "string"
},
"credentialId": {
"type": "string"
},
"id": {
"type": "string"
},
"oauthClientId": {
"type": "string"
},
"orgId": {
"type": "string"
},
"provider": {
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"refreshTokenExpiresAt": {
"format": "date-time",
"type": "string"
},
"status": {
"enum": [
"active",
"expired",
"invalidOAuthClient",
"invalidProviderState"
],
"type": "string",
"x-enum-varnames": [
"AuthzStatusActive",
"AuthzStatusExpired",
"AuthzStatusInvalidOAuthClient",
"AuthzInactiveProviderState"
]
},
"userId": {
"type": "string"
}
},
"type": "object"
},
"expiresAt": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| accessToken |
string |
false |
|
none |
| authorizedOauthProvider |
models.AuthorizedProvider |
false |
|
none |
| expiresAt |
string |
false |
|
none |
handler.ListOAuthProvidersResponse
{
"properties": {
"data": {
"items": {
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"type": "array",
"uniqueItems": false
}
},
"type": "object"
}
Properties
handler.OAuthCallbackRequest
{
"properties": {
"code": {
"type": "string"
},
"providerId": {
"type": "string"
},
"state": {
"type": "string"
}
},
"required": [
"code",
"providerId",
"state"
],
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| code |
string |
true |
|
none |
| providerId |
string |
true |
|
none |
| state |
string |
true |
|
none |
handler.jobStatusResponse
{
"properties": {
"details": {
"description": "Details is a slice of key-value pairs containing additional information about the job.\nFor example, for a delete provider job, it may include the provider ID and connected authorization IDs.\nExample usage:\nDetails = []struct {\n Name: \"provider_id\",\n Value: \"1234\",\n},\n{\n Name: \"authorization_ids\",\n Value: []string{\"1234\", \"5678\"},\n}",
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"type": "object"
},
"type": "array",
"uniqueItems": false
},
"finishedAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"startedAt": {
"format": "date-time",
"type": "string"
},
"status": {
"enum": [
"PENDING",
"RUNNING",
"COMPLETED",
"ERROR"
],
"type": "string",
"x-enum-varnames": [
"JobStatusPending",
"JobStatusRunning",
"JobStatusCompleted",
"JobStatusError"
]
},
"type": {
"enum": [
"DELETE_PROVIDER",
"STATS"
],
"type": "string",
"x-enum-varnames": [
"JobTypeDeleteProvider",
"JobTypeStats"
]
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| details |
[handler.keyValue] |
false |
|
Details is a slice of key-value pairs containing additional information about the job. For example, for a delete provider job, it may include the provider ID and connected authorization IDs. Example usage: Details = []struct { Name: "provider_id", Value: "1234", }, { Name: "authorization_ids", Value: []string{"1234", "5678"}, } |
| finishedAt |
string(date-time) |
false |
|
none |
| id |
string |
false |
|
none |
| name |
string |
false |
|
none |
| orgId |
string |
false |
|
none |
| startedAt |
string(date-time) |
false |
|
none |
| status |
models.JobStatus |
false |
|
none |
| type |
models.JobType |
false |
|
none |
handler.keyValue
{
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| name |
string |
false |
|
none |
| value |
string |
false |
|
none |
httpres.ErrorField
{
"properties": {
"message": {
"type": "string"
},
"name": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| message |
string |
false |
|
none |
| name |
string |
false |
|
none |
httpres.ErrorResponse
{
"properties": {
"errorFields": {
"items": {
"properties": {
"message": {
"type": "string"
},
"name": {
"type": "string"
}
},
"type": "object"
},
"type": "array",
"uniqueItems": false
},
"message": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| errorFields |
[httpres.ErrorField] |
false |
|
none |
| message |
string |
false |
|
none |
models.AuthorizedProvider
{
"properties": {
"createdAt": {
"format": "date-time",
"type": "string"
},
"credentialId": {
"type": "string"
},
"id": {
"type": "string"
},
"oauthClientId": {
"type": "string"
},
"orgId": {
"type": "string"
},
"provider": {
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
},
"refreshTokenExpiresAt": {
"format": "date-time",
"type": "string"
},
"status": {
"enum": [
"active",
"expired",
"invalidOAuthClient",
"invalidProviderState"
],
"type": "string",
"x-enum-varnames": [
"AuthzStatusActive",
"AuthzStatusExpired",
"AuthzStatusInvalidOAuthClient",
"AuthzInactiveProviderState"
]
},
"userId": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| createdAt |
string(date-time) |
false |
|
none |
| credentialId |
string |
false |
|
none |
| id |
string |
false |
|
none |
| oauthClientId |
string |
false |
|
none |
| orgId |
string |
false |
|
none |
| provider |
models.OAuthProvider |
false |
|
none |
| refreshTokenExpiresAt |
string(date-time) |
false |
|
none |
| status |
models.AuthzStatus |
false |
|
none |
| userId |
string |
false |
|
none |
models.AuthzStatus
{
"enum": [
"active",
"expired",
"invalidOAuthClient",
"invalidProviderState"
],
"type": "string",
"x-enum-varnames": [
"AuthzStatusActive",
"AuthzStatusExpired",
"AuthzStatusInvalidOAuthClient",
"AuthzInactiveProviderState"
]
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| anonymous |
string |
false |
|
none |
Enumerated Values
| Property |
Value |
| anonymous |
[active, expired, invalidOAuthClient, invalidProviderState] |
models.JobStatus
{
"enum": [
"PENDING",
"RUNNING",
"COMPLETED",
"ERROR"
],
"type": "string",
"x-enum-varnames": [
"JobStatusPending",
"JobStatusRunning",
"JobStatusCompleted",
"JobStatusError"
]
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| anonymous |
string |
false |
|
none |
Enumerated Values
| Property |
Value |
| anonymous |
[PENDING, RUNNING, COMPLETED, ERROR] |
models.JobType
{
"enum": [
"DELETE_PROVIDER",
"STATS"
],
"type": "string",
"x-enum-varnames": [
"JobTypeDeleteProvider",
"JobTypeStats"
]
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| anonymous |
string |
false |
|
none |
Enumerated Values
| Property |
Value |
| anonymous |
[DELETE_PROVIDER, STATS] |
models.OAuthProvider
{
"properties": {
"clientId": {
"type": "string"
},
"createdAt": {
"format": "date-time",
"type": "string"
},
"id": {
"type": "string"
},
"metadata": {
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"orgId": {
"type": "string"
},
"secureConfigId": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
},
"updatedAt": {
"format": "date-time",
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| clientId |
string |
false |
|
none |
| createdAt |
string(date-time) |
false |
|
none |
| id |
string |
false |
|
none |
| metadata |
models.ProviderMetadata |
false |
|
none |
| name |
string |
false |
|
none |
| orgId |
string |
false |
|
none |
| secureConfigId |
string |
false |
|
none |
| skipConsent |
boolean |
false |
|
none |
| status |
oauthprovider.Status |
false |
|
none |
| type |
oauthprovider.Type |
false |
|
none |
| updatedAt |
string(date-time) |
false |
|
none |
{
"properties": {
"host": {
"type": "string"
},
"settingsUrl": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| host |
string |
false |
|
none |
| settingsUrl |
string |
false |
|
none |
oauth.User
{
"properties": {
"description": {
"type": "string"
},
"email": {
"type": "string"
},
"familyName": {
"type": "string"
},
"givenName": {
"type": "string"
},
"locale": {
"type": "string"
},
"name": {
"type": "string"
},
"nickName": {
"type": "string"
},
"picture": {
"type": "string"
},
"raw": {
"additionalProperties": {},
"type": "object"
},
"sub": {
"type": "string"
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| description |
string |
false |
|
none |
| email |
string |
false |
|
none |
| familyName |
string |
false |
|
none |
| givenName |
string |
false |
|
none |
| locale |
string |
false |
|
none |
| name |
string |
false |
|
none |
| nickName |
string |
false |
|
none |
| picture |
string |
false |
|
none |
| raw |
object |
false |
|
none |
| » additionalProperties |
any |
false |
|
none |
| sub |
string |
false |
|
none |
oauthprovider.Status
{
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| anonymous |
string |
false |
|
none |
Enumerated Values
| Property |
Value |
| anonymous |
[active, inactive, disabled, deleted] |
oauthprovider.Type
{
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| anonymous |
string |
false |
|
none |
Enumerated Values
| Property |
Value |
| anonymous |
[github, gitlab, bitbucket, google, box, microsoft] |
provider.CreateProviderRequest
{
"properties": {
"clientId": {
"type": "string"
},
"clientSecret": {
"type": "string"
},
"name": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"type": {
"enum": [
"github",
"gitlab",
"bitbucket",
"google",
"box",
"microsoft"
],
"type": "string",
"x-enum-varnames": [
"TypeGithub",
"TypeGitlab",
"TypeBitbucket",
"TypeGoogle",
"TypeBox",
"TypeMicrosoft",
"TypeTest"
]
}
},
"required": [
"clientId",
"clientSecret",
"name",
"type"
],
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| clientId |
string |
true |
|
none |
| clientSecret |
string |
true |
|
none |
| name |
string |
true |
|
none |
| skipConsent |
boolean |
false |
|
none |
| type |
oauthprovider.Type |
true |
|
none |
provider.UpdateProviderRequest
{
"properties": {
"clientSecret": {
"type": "string"
},
"name": {
"type": "string"
},
"skipConsent": {
"type": "boolean"
},
"status": {
"enum": [
"active",
"inactive",
"disabled",
"deleted"
],
"type": "string",
"x-enum-varnames": [
"DefaultStatus",
"StatusActive",
"StatusInvalid",
"StatusDeleting",
"StatusDeletionFailed"
]
}
},
"type": "object"
}
Properties
| Name |
Type |
Required |
Restrictions |
Description |
| clientSecret |
string |
false |
|
none |
| name |
string |
false |
|
none |
| skipConsent |
boolean |
false |
|
none |
| status |
oauthprovider.Status |
false |
|
none |