POST
/
o
/
{organisation_id}
/
projects
/
{project_id}
/
connection-templates
Create a new connection template
curl --request POST \
  --url https://platform.versori.com/api/v2/o/{organisation_id}/projects/{project_id}/connection-templates \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "systemId": "<string>",
  "name": "<string>",
  "environmentId": "<string>",
  "dynamic": true
}'
{
  "id": "<string>",
  "connectionTemplateId": "<string>",
  "name": "<string>",
  "domain": "<string>",
  "dynamic": true,
  "authSchemeConfigs": [
    {
      "type": "none",
      "none": {
        "id": "<string>",
        "description": "<string>",
        "validationMessages": [
          {
            "text": "<string>",
            "severity": "info",
            "detail": [
              "<any>"
            ]
          }
        ]
      },
      "apiKey": {
        "id": "<string>",
        "description": "<string>",
        "validationMessages": [
          {
            "text": "<string>",
            "severity": "info",
            "detail": [
              "<any>"
            ]
          }
        ],
        "name": "<string>",
        "in": "query"
      },
      "basicAuth": {
        "id": "<string>",
        "description": "<string>",
        "validationMessages": [
          {
            "text": "<string>",
            "severity": "info",
            "detail": [
              "<any>"
            ]
          }
        ]
      },
      "oauth2": {
        "id": "<string>",
        "description": "<string>",
        "validationMessages": [
          {
            "text": "<string>",
            "severity": "info",
            "detail": [
              "<any>"
            ]
          }
        ],
        "authorizeUrl": "<string>",
        "tokenUrl": "<string>",
        "scopes": [
          {
            "name": "<string>",
            "description": "<string>"
          }
        ],
        "defaultScopes": [
          "<string>"
        ],
        "additionalAuthorizeParams": "<string>",
        "additionalTokenParams": "<string>",
        "mtlsEnabled": true,
        "mtlsCredentialId": "<string>",
        "pkce": true,
        "grant": {
          "authorizationCode": {
            "credentialId": "<string>",
            "organisationId": "<string>",
            "clientId": "<string>",
            "clientSecret": "<string>"
          },
          "clientCredentials": {},
          "password": {
            "credentialId": "<string>",
            "organisationId": "<string>",
            "clientId": "<string>",
            "clientSecret": "<string>"
          },
          "type": "authorizationCode"
        }
      },
      "oauth1": {
        "id": "<string>",
        "description": "<string>",
        "validationMessages": [
          {
            "text": "<string>",
            "severity": "info",
            "detail": [
              "<any>"
            ]
          }
        ],
        "consumerKey": "<string>",
        "consumerSecret": "<string>",
        "tempCredentialEndpoint": {
          "url": "<string>",
          "additionalParamConfigs": [
            {
              "parameterName": "<string>",
              "targetName": "<string>",
              "location": "LOCATION_IGNORE",
              "usages": "USAGE_UNKNOWN",
              "required": true,
              "modifiable": true
            }
          ],
          "parameterTransmission": "AUTH_STYLE_AUTHORIZATION_HEADER"
        },
        "resourceOwnerAuthorizationEndpoint": {
          "url": "<string>",
          "additionalParamConfigs": [
            {
              "parameterName": "<string>",
              "targetName": "<string>",
              "location": "LOCATION_IGNORE",
              "usages": "USAGE_UNKNOWN",
              "required": true,
              "modifiable": true
            }
          ],
          "parameterTransmission": "AUTH_STYLE_AUTHORIZATION_HEADER"
        },
        "tokenEndpoint": {
          "url": "<string>",
          "additionalParamConfigs": [
            {
              "parameterName": "<string>",
              "targetName": "<string>",
              "location": "LOCATION_IGNORE",
              "usages": "USAGE_UNKNOWN",
              "required": true,
              "modifiable": true
            }
          ],
          "parameterTransmission": "AUTH_STYLE_AUTHORIZATION_HEADER"
        },
        "signatureMethod": "<string>",
        "credentialId": "<string>"
      },
      "hmac": {
        "id": "<string>",
        "description": "<string>",
        "validationMessages": [
          {
            "text": "<string>",
            "severity": "info",
            "detail": [
              "<any>"
            ]
          }
        ],
        "name": "<string>",
        "in": "query",
        "algorithm": "sha1",
        "digestInputs": [
          "body"
        ]
      },
      "certificate": {
        "id": "<string>",
        "description": "<string>",
        "validationMessages": [
          {
            "text": "<string>",
            "severity": "info",
            "detail": [
              "<any>"
            ]
          }
        ]
      }
    }
  ],
  "templateBaseUrl": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer token authentication used by the Versori Platform. External consumers must provide an API key, however internal consumers must provide a JWT id_token issued by our IdP.

Path Parameters

organisation_id
string<ulid>
required
project_id
string<ulid>
required

Body

application/json
systemId
string<ulid>
required

ID of the system to add the project environment.

name
string
required

How you will reference your system from the SDK.

environmentId
string<ulid>

The environment to link the system to.

dynamic
boolean

If the connections to the system need to be dynamic or static. Dynamic connections are used when the integration runs for multiple end users. Defaults to false if not set.

Response

OK

id
string<ulid>
required

The system ID.

name
string
required

The name of the template. This is how the connections should be referenced in code.

domain
string
required
dynamic
boolean
required
authSchemeConfigs
object[]
required
templateBaseUrl
string
required
connectionTemplateId
string<ulid>