API Reference
Connect API
- Introduction
- Endpoints
- Protocol (HTTP)
- Connectors
- Connector Versions
- Connections
- Actions
- Triggers
- Definitions
- Protocols
- Miscellaneous
Embedded API
- Introduction
- Endpoints
Organisations API
- Overview
- Signing Keys
Create a new new connector version.
ImportHTTPConnectorVersion is used to create a new version for the connector.
This uses a new OpenAPI spec to create the new version.
curl --request POST \
--url https://platform.versori.com/api/connect/v1/o/{organisation_id}/connector/{connector_id}/http/import \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form 'metadata={
"format": "openapi",
"version": "<string>"
}'
{
"connector": {
"id": "<string>",
"organisationId": "<string>",
"name": "<string>",
"public": true,
"documentationURL": "<string>",
"imageURL": "<string>",
"tags": {},
"protocol": "http",
"authSchemeConfigs": [
{
"id": "<string>",
"description": "<string>",
"validationMessages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
],
"schemeType": "<string>"
}
],
"connectionVariables": [
{
"name": "<string>",
"value": "<string>"
}
],
"connections": [
{
"id": "<string>",
"name": "<string>",
"credentials": {
"action": [
{
"id": "<string>",
"authSchemeConfig": {
"id": "<string>",
"description": "<string>",
"validationMessages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
],
"schemeType": "<string>"
},
"credential": {
"id": "<string>",
"organisationId": "<string>",
"type": "none",
"name": "<string>",
"usages": [
{
"connection": {
"id": "<string>",
"name": "<string>",
"connector": {
"id": "<string>",
"organisationId": "<string>",
"name": "<string>",
"protocol": "http",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}
],
"errors": [
"<string>"
],
"data": {},
"expiresAt": "2023-11-07T05:31:56Z"
}
}
],
"trigger": [
{
"id": "<string>",
"authSchemeConfig": {
"id": "<string>",
"description": "<string>",
"validationMessages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
],
"schemeType": "<string>"
},
"credential": {
"id": "<string>",
"organisationId": "<string>",
"type": "none",
"name": "<string>",
"usages": [
{
"connection": {
"id": "<string>",
"name": "<string>",
"connector": {
"id": "<string>",
"organisationId": "<string>",
"name": "<string>",
"protocol": "http",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}
],
"errors": [
"<string>"
],
"data": {},
"expiresAt": "2023-11-07T05:31:56Z"
}
}
]
},
"variables": [
{
"name": "<string>",
"value": "<string>"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"versions": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"isLatest": true,
"isDefault": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"publishedAt": "2023-11-07T05:31:56Z",
"messages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
]
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"baseUrl": "<string>"
},
"definitions": [
{
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
],
"actions": [
{
"id": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"severity": "error"
}
],
"type": "http",
"name": "<string>",
"summary": "<string>",
"description": "<string>",
"method": "GET",
"path": "<string>",
"parameters": [
{
"name": "<string>",
"in": "cookie",
"required": true,
"type": "string",
"default": "<any>",
"completion": {}
}
],
"requestBody": {
"required": true,
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
},
"responses": [
{
"status": 123,
"id": "<string>",
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
}
]
}
],
"triggers": [
{
"id": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"severity": "error"
}
],
"type": "http",
"name": "<string>",
"summary": "<string>",
"description": "<string>",
"method": "GET",
"parameters": [
{
"name": "<string>",
"in": "cookie",
"required": true,
"type": "string",
"default": "<any>"
}
],
"requestBody": {
"required": true,
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
},
"responses": [
{
"status": 123,
"id": "<string>",
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
}
]
}
],
"messages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
]
}
Authorizations
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
ID is the unique identifier of the Connector.
Body
The file to be imported.
ImportHTTPConnectorVersionMetadata defines the metadata part of the multipart/form-data request when creating a new connector version.
Response
ImportHTTPConnectorResult defines the result of importing a Connector from an external format, such as OpenAPI.
HTTPConnector represents a connector to an external system over HTTP.
ID is the unique identifier of the Connector.
OrganisationID is the unique identifier of the Organisation that owns the Connector.
Name is the user-provided name of the Connector
ProtocolType denotes the set of all valid connector types.
http
, bigquery
AuthSchemeConfig defines how a Connector implements the AuthScheme in order to fulfil its authentication requirements. This is purely the configuration and not the actual credential which is used to authenticate. The credential uses this configuration to determine how to authenticate.
ID is the unique identifier of the AuthSchemeConfig, this is generated by the client and only requires to be unique amongst the elements of the array in which is it contained.
Description enables users to distinguish multiple configurations which use the same schemeType.
"none"
ValidationMessages is a list of messages which are generated when the AuthSchemeConfig is validated. This is typically used to provide feedback to the user when they are creating or updating the AuthSchemeConfig.
This field will be ignored if sent to the API.
Message is a message to be displayed to the user to indicate some information about the preceding request.
Text contains the text of the message.
info
, warning
, error
Details contains additional information about the message. This is intended to be used to provide more information about the message, such as a list of validation errors.
Connections is a list of all the connections this Connector has.
Connection defines the Action and Trigger credentials for the owning Connector, and additional variables which can be used to customize the Connector in a particular connection.
ID is the unique identifier of the Connection. Typically this is only used internally and most (if not all)
public-facing APIs will use the name
in combination with the Connector's id
instead.
Name is the name of the Connection. This must be unique within the owning Connector.
ConnectionCredentials defines the Action and Trigger credentials for the owning Connector. If multiple credentials are defined for each type, they are applied to the request in the order they are defined. This is to enable Connectors which require both a user session token and an API key to be provided in the request.
ConnectionCredential contains the a Credential and the AuthSchemeConfig to define how the Credential should be used against the Connection's Connector.
AuthSchemeConfig defines how a Connector implements the AuthScheme in order to fulfil its authentication requirements. This is purely the configuration and not the actual credential which is used to authenticate. The credential uses this configuration to determine how to authenticate.
CredentialBase is the base type for all credentials. It contains the common properties which are shared across all credential types.
ConnectionCredential contains the a Credential and the AuthSchemeConfig to define how the Credential should be used against the Connection's Connector.
AuthSchemeConfig defines how a Connector implements the AuthScheme in order to fulfil its authentication requirements. This is purely the configuration and not the actual credential which is used to authenticate. The credential uses this configuration to determine how to authenticate.
CredentialBase is the base type for all credentials. It contains the common properties which are shared across all credential types.
CreatedAt is the time the Connection was created.
UpdatedAt is the time the Connection was last updated.
Versions is a list of all the versions this Connector has.
ConnectorVersion represents a version of a Connector.
ID is the unique identifier of the ConnectorVersion, this is typically only used internally and the version
name
is used externally in combination with the Connector id
.
Name denotes the actual version value for the Connector. This can be any value but a consistent naming strategy is recommended, such as SemVer, CalVer or an incrementing number. The names "default" and "latest" are reserved words and cannot be used.
IsLatest denotes whether this is the latest version of the Connector.
IsDefault denotes whether this is the default version of the Connector.
CreatedAt is the time at which the ConnectorVersion was created.
UpdatedAt is the time at which the ConnectorVersion was last updated, including any changes to child resources.
PublishedAt is the time at which the ConnectorVersion was published.
Description allows specifying additional information about the ConnectorVersion, such as what changed since the last version etc.
Message is a message to be displayed to the user to indicate some information about the preceding request.
Text contains the text of the message.
info
, warning
, error
Details contains additional information about the message. This is intended to be used to provide more information about the message, such as a list of validation errors.
CreatedAt is the time at which the ConnectorVersion was created.
UpdatedAt is the time at which the ConnectorVersion was last updated, including any changes to child resources.
BaseURL is the base URL of all HTTP Actions within the Connector.
Hold an optional link to the documentation for the API.
The URL for the icon for the connector
Connection Variables is a list of default variables initialised in every connector connection.
ConnectionVariable denotes an arbitrary key/value pair which can be used to configure a connector.
DefinitionCommon is the common properties which are shared between Definitions for all of creation, retrieval and updates.
ID is the unique identifier of the Definition.
URL is the location of the actual Schema definition for this Definition entity.
The structure of this URL will be consistent across all media types for each connection, for example:
https://platform.versori.com/api/schemas/v1/o/{organisation_id}/{connector_id}/{connector_version}/{definition_slug}.{media_type_ext}
Name is a unique identifier for the Definition within the scope of the Connector. It is expected to both human and machine-readable, i.e. "Product" or "product_variant".
Accept indicates which content types, expressed as MIME types, that this definition can accept. This value is analogous to the Accept HTTP header, as defined in RFC 7231, section 5.3.2, except each type is defined in a separate array element, rather than as a comma-separated list.
This does not represent the content type of the schema body itself, but the data which conforms to this
definition. For example, an API may respond in JSON or YAML, but the schema may be a YAML-formatted JSON
Schema. In this case, the Definition's accept
field could be ["application/json", "text/yaml"]
and
schema.contentType
will be application/schema+yaml
.
ReferencedBy is a list of DefinitionReference objects which defines what other entities are referencing the this Definition.
DefinitionReference defines where another resource references this Definition.
definition
, action
, trigger
ID is the unique identifier of the Definition/Action/Trigger.
Name is unique identifier for the Definition/Action/Trigger within the scope of the Connector. It is expected to both human and machine-readable, i.e. "ProductFeature" or "stock_item".
Description is a human-friendly description of the Definition. This is typically used to describe the purpose of the Definition and how it should be used.
ActionHTTPCommon defines the common fields for all HTTP Actions.
http
Name is a unique identifier for the Action within the scope of the Connector. It is expected to both human and machine-readable, i.e. "GetProduct" or "get_products", see the validation regex for more details.
ID is the unique identifier of the Action.
HTTPMethod defines the HTTP method which will be used when invoking the Action. This is typically one of the standard HTTP methods such as GET, POST, PUT, PATCH or DELETE, but may be any valid HTTP method.
GET
, POST
, PUT
, PATCH
, DELETE
, HEAD
, OPTIONS
, CONNECT
, TRACE
ActionPath is appended to the Connector's base URL to build the full URL to send requests to. It may also contain placeholders to inject dynamic values from the following sources:
{{ param.<name> }}
- Injects the value of the parameter with the given name.{{ conn.<name> }}
- Injects the value of the connection variable with the given name.
ActionHTTPParameter defines a parameter which is sent to the HTTP endpoint when invoking the Action. This may
be a query parameter, header or cookie depending on the in
field.
Name is the name of the parameter which will be sent to the HTTP endpoint.
cookie
, header
, path
, query
Required denotes whether this parameter is required.
Type is the type of the parameter. Currently only scalar types are supported, if you require complex types then get in touch with support to discuss options.
string
, number
, integer
, boolean
Default is the default value to use for the parameter if no value is provided by the user. If this is not defined then the parameter will not be sent to the HTTP endpoint if no value is explicitly provided by the user.
If this value is a string, it may be templated using a Go-formatted template
string, i.e. {{ .conn.foo }}
where foo
is an connection variable defined in the
Connector's Connection.
ActionCompletion defines how an Action may be completed by Switchboard to aid the user in selecting a valid value. Schema TBD.
Responses defines the expected responses from the HTTP endpoint. This is used to determine whether the Action was successful or not.
ActionHTTPResponse defines what responses may be returned by the HTTP server when invoking the Action.
An Action may support one Definition per media-type, i.e. application/json or application/xml etc. Attempts to link multiple Definitions with the same media-type will result in an error.
ActionDefinition links a Definition to an Action.
ID is a unique identifier for the request body within the scope of the Action.
DefinitionCommon is the common properties which are shared between Definitions for all of creation, retrieval and updates.
ID is the unique identifier of the Definition.
URL is the location of the actual Schema definition for this Definition entity.
The structure of this URL will be consistent across all media types for each connection, for example:
https://platform.versori.com/api/schemas/v1/o/{organisation_id}/{connector_id}/{connector_version}/{definition_slug}.{media_type_ext}
Name is a unique identifier for the Definition within the scope of the Connector. It is expected to both human and machine-readable, i.e. "Product" or "product_variant".
Accept indicates which content types, expressed as MIME types, that this definition can accept. This value is analogous to the Accept HTTP header, as defined in RFC 7231, section 5.3.2, except each type is defined in a separate array element, rather than as a comma-separated list.
This does not represent the content type of the schema body itself, but the data which conforms to this
definition. For example, an API may respond in JSON or YAML, but the schema may be a YAML-formatted JSON
Schema. In this case, the Definition's accept
field could be ["application/json", "text/yaml"]
and
schema.contentType
will be application/schema+yaml
.
ReferencedBy is a list of DefinitionReference objects which defines what other entities are referencing the this Definition.
DefinitionReference defines where another resource references this Definition.
Description is a human-friendly description of the Definition. This is typically used to describe the purpose of the Definition and how it should be used.
Status is the HTTP status code which is expected from the HTTP endpoint. If this is not defined then this response is treated as the default response, i.e. if no other response matches then this response will be used. An action may only have one default response and each response must have a unique status code.
Summary is a human-readable version of the id
field, i.e. "Get Product" or "Get Products". This is used
when displaying the Action to users, however if omitted the actionId
can be used to display to users
instead.
Description is a human-readable description of the Action. It can provide extra information to users about how the Action operates and anything the user may need to be aware of when using it.
Errors is a list of ErrorField objects which defines the errors which may be returned by the Action. An empty array denotes that the Action has been validated and no errors were found. If this field is undefined then this means validation has not occurred.
ActionError is the payload returned when an Action fails validation
Field is the field which failed validation. This is typically a JSON Pointer, i.e. "/parameters/0/properties/id", however this is open for discussion (we should be consistent with the ErrorField type).
Message is a human-readable description of the error. This is typically a human-readable string, i.e. "The parameter 'id' is invalid".
Severity is the severity of the error. This is used to determine how the error should be displayed to the user, i.e. a warning may be displayed in a modal dialog, whereas an error may be displayed inline.
error
, warning
ActionHTTPRequestBody defines whether a request body is required for a particular HTTP Action, and if so which Definitions are considered valid. If this value is undefined then no request body will be sent.
Required denotes whether a request body is required for this Action.
An Action may support one Definition per media-type, i.e. application/json or application/xml etc. Attempts to link multiple Definitions with the same media-type will result in an error.
ActionDefinition links a Definition to an Action.
ID is a unique identifier for the request body within the scope of the Action.
DefinitionCommon is the common properties which are shared between Definitions for all of creation, retrieval and updates.
ID is the unique identifier of the Definition.
URL is the location of the actual Schema definition for this Definition entity.
The structure of this URL will be consistent across all media types for each connection, for example:
https://platform.versori.com/api/schemas/v1/o/{organisation_id}/{connector_id}/{connector_version}/{definition_slug}.{media_type_ext}
Name is a unique identifier for the Definition within the scope of the Connector. It is expected to both human and machine-readable, i.e. "Product" or "product_variant".
Accept indicates which content types, expressed as MIME types, that this definition can accept. This value is analogous to the Accept HTTP header, as defined in RFC 7231, section 5.3.2, except each type is defined in a separate array element, rather than as a comma-separated list.
This does not represent the content type of the schema body itself, but the data which conforms to this
definition. For example, an API may respond in JSON or YAML, but the schema may be a YAML-formatted JSON
Schema. In this case, the Definition's accept
field could be ["application/json", "text/yaml"]
and
schema.contentType
will be application/schema+yaml
.
ReferencedBy is a list of DefinitionReference objects which defines what other entities are referencing the this Definition.
DefinitionReference defines where another resource references this Definition.
Description is a human-friendly description of the Definition. This is typically used to describe the purpose of the Definition and how it should be used.
TriggerHTTPCommon defines the common fields for all HTTP Triggers.
http
Name is a unique identifier for the Trigger within the scope of the Connector. It is expected to both human and machine-readable, i.e. "GetProduct" or "get_products", see the validation regex for more details.
ID is the unique identifier of the Trigger.
HTTPMethod defines the HTTP method which will be used when invoking the Action. This is typically one of the standard HTTP methods such as GET, POST, PUT, PATCH or DELETE, but may be any valid HTTP method.
GET
, POST
, PUT
, PATCH
, DELETE
, HEAD
, OPTIONS
, CONNECT
, TRACE
TriggerHTTPParameter defines a parameter which is sent to the HTTP endpoint when invoking
the Trigger. This may be a query parameter, header or cookie depending on the in
field.
Name is the name of the parameter which will be sent to the HTTP endpoint.
cookie
, header
, query
Required denotes whether this parameter is required.
Type is the type of the parameter. Currently only scalar types are supported, if you require complex types then get in touch with support to discuss options.
string
, number
, integer
, boolean
Default is the default value to use for the parameter if no value is provided by the user. If this is not defined then the parameter will not be sent to the HTTP endpoint if no value is explicitly provided by the user.
If this value is a string, it may be templated using a Go-formatted template
string, i.e. {{ .conn.foo }}
where foo
is an connection variable defined in the
Connector's Connection.
Responses defines the expected responses from the HTTP endpoint. This is used to determine whether the Trigger was successful or not.
TriggerHTTPResponse defines what responses may be returned by the HTTP server when invoking the Trigger.
a Trigger may support one Definition per media-type, i.e. application/json or application/xml etc. Attempts to link multiple Definitions with the same media-type will result in an error.
TriggerDefinition links a Definition to a Trigger.
ID is a unique identifier for the request body within the scope of the Trigger.
DefinitionCommon is the common properties which are shared between Definitions for all of creation, retrieval and updates.
ID is the unique identifier of the Definition.
URL is the location of the actual Schema definition for this Definition entity.
The structure of this URL will be consistent across all media types for each connection, for example:
https://platform.versori.com/api/schemas/v1/o/{organisation_id}/{connector_id}/{connector_version}/{definition_slug}.{media_type_ext}
Name is a unique identifier for the Definition within the scope of the Connector. It is expected to both human and machine-readable, i.e. "Product" or "product_variant".
Accept indicates which content types, expressed as MIME types, that this definition can accept. This value is analogous to the Accept HTTP header, as defined in RFC 7231, section 5.3.2, except each type is defined in a separate array element, rather than as a comma-separated list.
This does not represent the content type of the schema body itself, but the data which conforms to this
definition. For example, an API may respond in JSON or YAML, but the schema may be a YAML-formatted JSON
Schema. In this case, the Definition's accept
field could be ["application/json", "text/yaml"]
and
schema.contentType
will be application/schema+yaml
.
ReferencedBy is a list of DefinitionReference objects which defines what other entities are referencing the this Definition.
DefinitionReference defines where another resource references this Definition.
Description is a human-friendly description of the Definition. This is typically used to describe the purpose of the Definition and how it should be used.
Status is the HTTP status code which is expected from the HTTP endpoint. If this is not defined then this response is treated as the default response, i.e. if no other response matches then this response will be used. a Trigger may only have one default response and each response must have a unique status code.
Summary is a human-readable version of the id
field, i.e. "Get Product" or "Get Products". This is used
when displaying the Trigger to users, however if omitted the TriggerId
can be used to display to users
instead.
Description is a human-readable description of the Trigger. It can provide extra information to users about how the Trigger operates and anything the user may need to be aware of when using it.
Errors is a list of ErrorField objects which defines the errors which may be returned by the Trigger. An empty array denotes that the Trigger has been validated and no errors were found. If this field is undefined then this means validation has not occurred.
TriggerError is the payload returned when a Trigger fails validation
Field is the field which failed validation. This is typically a JSON Pointer, i.e. "/parameters/0/properties/id", however this is open for discussion (we should be consistent with the ErrorField type).
Message is a human-readable description of the error. This is typically a human-readable string, i.e. "The parameter 'id' is invalid".
Severity is the severity of the error. This is used to determine how the error should be displayed to the user, i.e. a warning may be displayed in a modal dialog, whereas an error may be displayed inline.
error
, warning
TriggerHTTPRequestBody defines whether a request body is required for a particular HTTP Trigger, and if so which Definitions are considered valid. If this value is undefined then no request body will be sent.
Required denotes whether a request body is required for this Trigger.
a Trigger may support one Definition per media-type, i.e. application/json or application/xml etc. Attempts to link multiple Definitions with the same media-type will result in an error.
TriggerDefinition links a Definition to a Trigger.
ID is a unique identifier for the request body within the scope of the Trigger.
DefinitionCommon is the common properties which are shared between Definitions for all of creation, retrieval and updates.
ID is the unique identifier of the Definition.
URL is the location of the actual Schema definition for this Definition entity.
The structure of this URL will be consistent across all media types for each connection, for example:
https://platform.versori.com/api/schemas/v1/o/{organisation_id}/{connector_id}/{connector_version}/{definition_slug}.{media_type_ext}
Name is a unique identifier for the Definition within the scope of the Connector. It is expected to both human and machine-readable, i.e. "Product" or "product_variant".
Accept indicates which content types, expressed as MIME types, that this definition can accept. This value is analogous to the Accept HTTP header, as defined in RFC 7231, section 5.3.2, except each type is defined in a separate array element, rather than as a comma-separated list.
This does not represent the content type of the schema body itself, but the data which conforms to this
definition. For example, an API may respond in JSON or YAML, but the schema may be a YAML-formatted JSON
Schema. In this case, the Definition's accept
field could be ["application/json", "text/yaml"]
and
schema.contentType
will be application/schema+yaml
.
ReferencedBy is a list of DefinitionReference objects which defines what other entities are referencing the this Definition.
DefinitionReference defines where another resource references this Definition.
Description is a human-friendly description of the Definition. This is typically used to describe the purpose of the Definition and how it should be used.
Message is a message to be displayed to the user to indicate some information about the preceding request.
Text contains the text of the message.
info
, warning
, error
Details contains additional information about the message. This is intended to be used to provide more information about the message, such as a list of validation errors.
curl --request POST \
--url https://platform.versori.com/api/connect/v1/o/{organisation_id}/connector/{connector_id}/http/import \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: multipart/form-data' \
--form 'metadata={
"format": "openapi",
"version": "<string>"
}'
{
"connector": {
"id": "<string>",
"organisationId": "<string>",
"name": "<string>",
"public": true,
"documentationURL": "<string>",
"imageURL": "<string>",
"tags": {},
"protocol": "http",
"authSchemeConfigs": [
{
"id": "<string>",
"description": "<string>",
"validationMessages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
],
"schemeType": "<string>"
}
],
"connectionVariables": [
{
"name": "<string>",
"value": "<string>"
}
],
"connections": [
{
"id": "<string>",
"name": "<string>",
"credentials": {
"action": [
{
"id": "<string>",
"authSchemeConfig": {
"id": "<string>",
"description": "<string>",
"validationMessages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
],
"schemeType": "<string>"
},
"credential": {
"id": "<string>",
"organisationId": "<string>",
"type": "none",
"name": "<string>",
"usages": [
{
"connection": {
"id": "<string>",
"name": "<string>",
"connector": {
"id": "<string>",
"organisationId": "<string>",
"name": "<string>",
"protocol": "http",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}
],
"errors": [
"<string>"
],
"data": {},
"expiresAt": "2023-11-07T05:31:56Z"
}
}
],
"trigger": [
{
"id": "<string>",
"authSchemeConfig": {
"id": "<string>",
"description": "<string>",
"validationMessages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
],
"schemeType": "<string>"
},
"credential": {
"id": "<string>",
"organisationId": "<string>",
"type": "none",
"name": "<string>",
"usages": [
{
"connection": {
"id": "<string>",
"name": "<string>",
"connector": {
"id": "<string>",
"organisationId": "<string>",
"name": "<string>",
"protocol": "http",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
},
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}
],
"errors": [
"<string>"
],
"data": {},
"expiresAt": "2023-11-07T05:31:56Z"
}
}
]
},
"variables": [
{
"name": "<string>",
"value": "<string>"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
],
"versions": [
{
"id": "<string>",
"name": "<string>",
"description": "<string>",
"isLatest": true,
"isDefault": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"publishedAt": "2023-11-07T05:31:56Z",
"messages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
]
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"baseUrl": "<string>"
},
"definitions": [
{
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
],
"actions": [
{
"id": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"severity": "error"
}
],
"type": "http",
"name": "<string>",
"summary": "<string>",
"description": "<string>",
"method": "GET",
"path": "<string>",
"parameters": [
{
"name": "<string>",
"in": "cookie",
"required": true,
"type": "string",
"default": "<any>",
"completion": {}
}
],
"requestBody": {
"required": true,
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
},
"responses": [
{
"status": 123,
"id": "<string>",
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
}
]
}
],
"triggers": [
{
"id": "<string>",
"errors": [
{
"field": "<string>",
"message": "<string>",
"severity": "error"
}
],
"type": "http",
"name": "<string>",
"summary": "<string>",
"description": "<string>",
"method": "GET",
"parameters": [
{
"name": "<string>",
"in": "cookie",
"required": true,
"type": "string",
"default": "<any>"
}
],
"requestBody": {
"required": true,
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
},
"responses": [
{
"status": 123,
"id": "<string>",
"definitions": [
{
"id": "<string>",
"definition": {
"id": "<string>",
"name": "<string>",
"accept": [
"<string>"
],
"description": "<string>",
"url": "<string>",
"referencedBy": [
{
"type": "definition",
"id": "<string>",
"name": "<string>"
}
]
}
}
]
}
]
}
],
"messages": [
{
"text": "<string>",
"severity": "info",
"detail": [
"<string>"
]
}
]
}