The connection object provides information that allows your app to obtain authorization from your chosen external service.
| Property | Type | Required? | Description |
|---|---|---|---|
name | string | Yes | The name of the connection. This value must be unique. |
id | string | System-generated | The system-generated ID of the connection. This property is read-only. Do not include it when uploading your initial manifest. |
description | string | Yes | The description of the connection. |
type | string | Yes | Connection type. Valid values:
|
params | Connection parameters object | Yes | An object containing the parameters required to access an external platform API. |
Connection: Parameters schema
| Property | Type | Required? | Description |
|---|---|---|---|
provider | string | Yes | Valid values:
|
scopes | string[] | Yes | The scopes to request. |
clientId | string | Yes | The client ID provided by the external platform. Maximum length: 191 characters |
clientSecret | string | Yes | The client secret provided by the external platform. Maximum length: 191 characters |
grantType | string | No | The type of authorization that the extension app uses to obtain permission to send requests to the external API service. Valid values:
|
customConfig | Custom configuration object | Yes | An object to store custom configuration information. |
Connection: Custom configuration schema
| Property | Type | Required? | Description |
|---|---|---|---|
authorizationUrl | string | Yes, if the authorization method is Authorization Code Grant. Not used for Client Credentials Grant. | The OAuth2 authorization endpoint. The URL’s top-level domain must be one of the following:
docusign. in the domain. |
tokenUrl | string | Yes | OAuth2 token endpoint. |
authorizationParams | object | No | An object to store any query parameters required for the authorization URL. |
authorizationMethod | string | No | Valid values:
|
scopeSeparator | string | No | The delimiter used to separate the scopes. The default value is a comma. |
A connection object looks like this:
{"name": "authentication","description": "secure connection to proxy","type": "oauth2","params": {"provider": "CUSTOM","scopes": [],"clientId": "230546a7-xxxx-xxxx-xxxx-af205d5494ad","clientSecret": "119376b2-xxxx-xxxx-xxxx-aa951d7878eb","grantType": "authorization_code","customConfig": {"authorizationUrl": "https://example.com/auth","tokenUrl": "https://example.com/token","authorizationParams": {"access_type": "offline","prompt": "consent"}}}}