ConnectorStaged represents the draft version of a Connector.
Representations
ConnectorStaged
id​String​ | Unique identifier of the Connector. |
version​Int​ | Current version of the Connector. |
key​String​ | User-defined unique identifier of the Connector. MinLength:Â2​MaxLength: 256​Pattern: ^[A-Za-z0-9_-]+$​ |
name​String​ | Name of the Connector. |
description​String​ | Description of the Connector. |
integrationTypes​Array of IntegrationType​ | Integration types of the Connector. Can be used to filter search and query results. |
creator​Creator​ | Owner of the Connector. |
repository​Repository​ | GitHub repository details of the Connector. |
configurations​Array of ConnectorConfigurationApplication​ | Configurations needed by Connectors for hosting. Loaded as environment variables in the application. |
globalConfiguration​ | Global configuration applied to all applications in the Deployment. |
apiClient​ | Configuration for the API Client used for generating API Client credentials. |
private​Boolean​ | If true, only Composable Commerce Projects specified in privateProjects can access the Connector. |
privateProjects​Array of ProjectIdentifier​ | If private is true, only these Composable Commerce Projects can access the Connector. |
supportedRegions​Array of Region​ | If provided, Connectors can only be deployed in these Regions. If not provided, Connectors can be deployed in any supported Region. For faster request processing, we recommend adding only the required Region. |
certificationInfo​ | Comments made during the certification process. |
status​ | Current status of the Connector. Default:ÂDraft​ |
publishingReport​ | The publishing request report of the Connector. |
alreadyListed​Boolean​ | If true, the Connector is published and ready for use. |
hasChanges​Boolean​ | If true, the ConnectorStaged data is different from the production Connector data. |
isPreviewable​ | The previewable status of the ConnectorStaged. Default:Ânone​ |
previewableReport​ | The previewable request report. |
documentationUrl​String​ | URL to the documentation of the Connector. |
ConnectorStagedDraft
key​String​ | User-defined unique identifier of the Connector. MinLength:Â2​MaxLength: 256​Pattern: ^[A-Za-z0-9_-]+$​ |
name​String​ | Name of the Connector. |
description​String​ | Description of the Connector. |
integrationTypes​Array of IntegrationType​ | Integration types of the Connector. Can be used to filter search and query results. |
creator​Creator​ | Owner of the Connector. |
repository​Repository​ | GitHub repository details of the Connector. |
supportedRegions​Array of Region​ | If provided, Connectors can only be deployed in these Regions. If not provided, Connectors can be deployed in any supported Region. For faster request processing, we recommend adding only the required Region. |
privateProjects​Array of ProjectIdentifier​ | Composable Commerce Projects that can access the Connector. If empty, only the creator can access this Connector. |
documentationUrl​String​ | URL to the documentation of the Connector. |
ConnectorStagedPagedQueryResponse
limit​Int​ | The maximum number of the ConnectorStaged returned. |
offset​Int​ | The offset of the ConnectorStaged returned. |
count​Int​ | The number of ConnectorStaged returned. |
total​Int​ | The total number of ConnectorStaged matching the query. |
results​Array of ConnectorStaged​ | ConnectorStaged matching the query. |
Creator
Details of the individual or organization who developed the Connector.
name​String​ | Name of the person who owns the Connector. |
title​String​ | Title of the person who owns the Connector. |
email​String​ | Contact email address of the creator. |
company​String​ | Name of the company that owns the Connector. |
logoUrl​String​ | URL to a logo image used to represent the creator. |
noOfContributors​Int​ | Number of contributors currently working for the company. |
supportUrl​String​ | URL to the support website of the Connector. |
{
"title": "Mr",
"name": "John Doe",
"email": "john.doe@example.com",
"company": "commercetools",
"noOfContributors": 200,
"logoUrl": "https://www.example.com/logo.png",
"supportUrl": "https://www.example.com/support"
}Repository
Details of the GitHub repository that contains the Connect applications.
url​String​ | HTTPS or SSH GitHub URL of the GitHub repository. Private repositories must use an SSH URL. |
tag​String​ | Git tag of the release to use. |
{
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
}ConnectorConfigurationApplication
The configuration of a Connect application. These values are automatically obtained from the connect.yaml file in the GitHub repository.
applicationName​String​ | Name of the Connect application. MinLength:Â2​MaxLength: 256​Pattern: ^[A-Za-z0-9_-]+$​ |
applicationType​String​ | The Connect application type. Can be"service", "event", "job", "merchant-center-custom-application", "merchant-center-custom-view", or "assets"​ |
standardConfiguration​Array of StandardConfigurationKey​ | Contains the name, description, and default values of standard environment variables. |
securedConfiguration​Array of SecuredConfigurationKey​ | Contains the name and description of secret environment variables. |
{
"applicationName": "app-1",
"applicationType": "service",
"standardConfiguration": [
{
"key": "CONFIG_KEY",
"description": "config key description",
"required": true,
"default": "config key default value"
}
],
"securedConfiguration": [
{
"key": "CONFIG_SECRET_KEY",
"description": "config secret description",
"required": true
}
]
}StandardConfigurationKey
The name, description, and default value of a standard environment variable.
key​String​ | Name of the environment variable. |
description​String​ | Description of the environment variable. |
default​String​ | Default value of the environment variable. |
required​Boolean​ | Indicates if the environment variable is required. Default:Âfalse​ |
{
"key": "CONFIG_KEY",
"description": "config key description",
"required": true,
"default": "config default value"
}SecuredConfigurationKey
The name and description of a secret environment variable.
key​String​ | Name of the environment variable. |
description​String​ | Description of the environment variable. |
required​Boolean​ | Indicates if the environment variable is required. Default:Âfalse​ |
{
"key": "CONFIG_KEY",
"description": "config key description",
"required": true,
"default": "config default value"
}ConnectorGlobalConfiguration
Global configuration applied to all applications in the deployment.
standardConfiguration​Array of StandardConfigurationKey​ | Contains the name and description of standard environment variables. |
securedConfiguration​Array of SecuredConfigurationKey​ | Contains the name and description of secret environment variables. |
IsPreviewable
The previewable status of the ConnectorStaged.
trueConnectorStaged can be used in a Deployment.
falseConnectorStaged cannot be used in a Deployment.
pendingThe request for previewable status is currently being processed.
noneNo request for previewable status has been made.
ConnectorReport
Contains report entries for publish/preview requests.
entries​Array of ConnectorReportEntry​ | Contains information, error, and warning notices. |
ConnectorReportEntry
Describes an information, error, or warning notice.
type​ | The report entry type. |
title​String​ | The title of the report entry. |
message​String​ | The message related to the report entry. |
createdAt​DateTime​ | When the report entry was created. |
{
"type": "Error",
"title": "Connector specification file not found",
"createdAt": "2023-08-08T12:20:31.143Z"
}ConnectorReportEntryType
The type of message being reported.
InformationIndicates information returned during the publish/preview task.
WarningIndicates an issue that arose during the publish/preview task.
ErrorIndicates a crash or failure to complete the publish/preview task.
CertificationInfo
comments​Array of CertificationInfoComment​ | Comments made during the certification process. |
CertificationInfoComment
Contains metadata and body text of a comment made during the certification process.
userId​String​ | The commercetools Composable Commerce Project key associated with the person making the comment. |
datetime​DateTime​ | Date and time (UTC) the comment was added. |
comment​String​ | The body text of the comment. |
{
"userId": "project-key",
"datetime": "2023-03-17T14:00:00.000Z",
"comment": "An example comment."
}ConnectorStatus
Indicates the current status of the ConnectorStaged.
DraftThe ConnectorStaged is currently a draft.
ProcessingThe ConnectorStaged publish request is being processed.
ReadyForCertificationThe ConnectorStaged is ready to be certified.
InCertificationThe ConnectorStaged is in the certification process.
PublishedThe ConnectorStaged was published.
FailedThe ConnectorStaged was not published.
Get ConnectorStaged
Get ConnectorStaged by ID
manage_project:{projectKey}manage_connectors:{projectKey}view_connectors:{projectKey}idString ​ | id of the ConnectorStaged |
regionString ​ | Region in which the Project is hosted. |
application/jsoncurl --get https://connect.{region}.commercetools.com/connectors/drafts/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" {
"id": "5ab3edcd-9d23-4934-8f48-256805253119",
"key": "connector-key",
"version": 1,
"name": "Connector's name",
"description": "Connector's description",
"integrationTypes": ["other"],
"creator": {
"title": "Mr",
"name": "John Doe",
"email": "john.doe@example.com",
"company": "commercetools",
"noOfContributors": 200
},
"repository": {
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
},
"configurations": [
{
"applicationName": "app-1",
"applicationType": "service",
"standardConfiguration": [
{
"key": "CONFIG_KEY",
"description": "config key description",
"required": true,
"default": "config default value"
}
],
"securedConfiguration": [
{
"key": "CONFIG_SECRET_KEY",
"description": "config secret description",
"required": true
}
]
}
],
"private": false,
"privateProjects": [],
"supportedRegions": ["us-central1.gcp", "europe-west1.gcp"],
"hasChanges": false,
"alreadyListed": false,
"status": "Failed",
"publishingReport": {
"entries": [
{
"type": "Error",
"title": "Connector specification file not found",
"createdAt": "2023-08-08T17:00:59.327Z"
}
]
},
"isPreviewable": "false",
"previewableReport": {
"entries": [
{
"type": "Error",
"title": "Connector specification file not found",
"createdAt": "2023-08-08T12:20:31.143Z"
}
]
}
}Get ConnectorStaged by Key
manage_project:{projectKey}manage_connectors:{projectKey}view_connectors:{projectKey}keyString ​ | key of the ConnectorStaged |
regionString ​ | Region in which the Project is hosted. |
application/jsoncurl --get https://connect.{region}.commercetools.com/connectors/drafts/key={key} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" {
"id": "5ab3edcd-9d23-4934-8f48-256805253119",
"key": "connector-key",
"version": 1,
"name": "Connector's name",
"description": "Connector's description",
"integrationTypes": ["other"],
"creator": {
"title": "Mr",
"name": "John Doe",
"email": "john.doe@example.com",
"company": "commercetools",
"noOfContributors": 200
},
"repository": {
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
},
"configurations": [
{
"applicationName": "app-1",
"applicationType": "service",
"standardConfiguration": [
{
"key": "CONFIG_KEY",
"description": "config key description",
"required": true,
"default": "config default value"
}
],
"securedConfiguration": [
{
"key": "CONFIG_SECRET_KEY",
"description": "config secret description",
"required": true
}
]
}
],
"private": false,
"privateProjects": [],
"supportedRegions": ["us-central1.gcp", "europe-west1.gcp"],
"hasChanges": false,
"alreadyListed": false,
"status": "Failed",
"publishingReport": {
"entries": [
{
"type": "Error",
"title": "Connector specification file not found",
"createdAt": "2023-08-08T17:00:59.327Z"
}
]
},
"isPreviewable": "false",
"previewableReport": {
"entries": [
{
"type": "Error",
"title": "Connector specification file not found",
"createdAt": "2023-08-08T12:20:31.143Z"
}
]
}
}Query ConnectorStaged
manage_project:{projectKey}manage_connectors:{projectKey}view_connectors:{projectKey}regionString ​ | Region in which the Project is hosted. |
limitInt ​ | Number of results requested. Default: 20​Minimum: 0​Maximum: 500​ |
offsetInt ​ | Number of elements skipped. Default: 0​Maximum: 10000​ |
sortString ​ | The parameter can be passed multiple times. |
isPrivateBoolean ​ | If true, only private Connectors are returned. If false, only public Connectors are returned. |
integrationTypes | Filter the results by the integrationType of a ConnectorStaged.The parameter can be passed multiple times. |
ConnectorStagedPagedQueryResponse
asapplication/jsoncurl --get https://connect.{region}.commercetools.com/connectors/drafts -i \
--header "Authorization: Bearer ${BEARER_TOKEN}"{
"offset": 0,
"limit": 20,
"total": 1,
"count": 1,
"results": [
{
"id": "5ab3edcd-9d23-4934-8f48-256805253119",
"key": "connector-key",
"version": 1,
"name": "Connector's name",
"description": "Connector's description",
"integrationTypes": ["other"],
"creator": {
"title": "Mr",
"name": "John Doe",
"email": "john.doe@example.com",
"company": "commercetools",
"noOfContributors": 200
},
"repository": {
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
},
"configurations": [
{
"applicationName": "app-1",
"applicationType": "service",
"standardConfiguration": [
{
"key": "CONFIG_KEY",
"description": "config key description",
"required": true,
"default": "config default value"
}
],
"securedConfiguration": [
{
"key": "CONFIG_SECRET_KEY",
"description": "config secret description",
"required": true
}
]
}
],
"private": false,
"privateProjects": [],
"supportedRegions": ["us-central1.gcp", "europe-west1.gcp"],
"hasChanges": false,
"alreadyListed": false,
"status": "Draft",
"publishingReport": null,
"isPreviewable": "none",
"previewableReport": null,
"certified": true
}
]
}Create ConnectorStaged
manage_project:{projectKey}manage_connectors:{projectKey}regionString ​ | Region in which the Project is hosted. |
application/jsonapplication/jsoncurl https://connect.{region}.commercetools.com/connectors/drafts -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"id" : "5ab3edcd-9d23-4934-8f48-256805253119",
"key" : "connector-key",
"version" : 1,
"name" : "Connector's name",
"description" : "Connector's description",
"creator" : {
"title" : "Mr",
"name" : "John Doe",
"email" : "john.doe@example.com",
"company" : "commercetools",
"noOfContributors" : 200
},
"repository" : {
"url" : "git@github.com:commercetools/connect-application-kit.git",
"tag" : "0.0.0"
},
"privateProjects" : [ ],
"private" : false,
"hasChanges" : true,
"alreadyListed" : true,
"isPreviewable" : "true",
"status" : "Draft",
"publishingReport" : null,
"previewableReport" : {
"entries" : [ {
"title" : "Image security analysis check succeeded",
"type" : "Information",
"message" : null,
"createdAt" : "2024-02-15T10:12:12.069Z",
"application" : null
}, {
"title" : "SAST and SCA analysis check succeeded",
"type" : "Information",
"message" : null,
"createdAt" : "2024-02-15T10:12:12.072Z",
"application" : null
}, {
"title" : "Connector specification file validation check succeeded",
"type" : "Information",
"message" : null,
"createdAt" : "2024-02-15T10:12:12.073Z",
"application" : null
} ]
},
"supportedRegions" : [ "us-central1.gcp", "europe-west1.gcp" ]
}
DATA{
"id": "5ab3edcd-9d23-4934-8f48-256805253119",
"key": "connector-key",
"version": 1,
"name": "Connector's name",
"description": "Connector's description",
"integrationTypes": ["other"],
"creator": {
"title": "Mr",
"name": "John Doe",
"email": "john.doe@example.com",
"company": "commercetools",
"noOfContributors": 200
},
"repository": {
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
},
"configurations": [
{
"applicationName": "app-1",
"applicationType": "service",
"standardConfiguration": [
{
"key": "CONFIG_KEY",
"description": "config key description"
}
],
"securedConfiguration": [
{
"key": "CONFIG_SECRET_KEY",
"description": "config secret description"
}
]
}
],
"private": true,
"privateProjects": [],
"supportedRegions": ["us-central1.gcp", "europe-west1.gcp"],
"hasChanges": false,
"alreadyListed": false,
"status": "Draft",
"isPreviewable": "none"
}Update ConnectorStaged
Update ConnectorStaged by ID
manage_project:{projectKey}manage_connectors:{projectKey}idString ​ | id of the ConnectorStaged |
regionString ​ | Region in which the Project is hosted. |
application/jsonversion​Int​ | Expected version of the Connector on which the changes apply. |
actions​Array of ConnectorUpdateAction​ | Update actions to be performed on the Connector. |
application/jsoncurl https://connect.{region}.commercetools.com/connectors/drafts/{id} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"version" : 1,
"actions" : [ {
"action" : "setName",
"name" : "New Connector name"
} ]
}
DATA{
"id": "5ab3edcd-9d23-4934-8f48-256805253119",
"key": "connector-key",
"version": 2,
"name": "New Connector name",
"description": "Connector's description",
"integrationTypes": ["other"],
"creator": {
"title": "Mr",
"name": "John Doe",
"email": "john.doe@example.com",
"company": "commercetools",
"noOfContributors": 200
},
"repository": {
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
},
"configurations": [
{
"applicationName": "app-1",
"applicationType": "service",
"standardConfiguration": [
{
"key": "CONFIG_KEY",
"description": "config key description"
}
],
"securedConfiguration": [
{
"key": "CONFIG_SECRET_KEY",
"description": "config secret description"
}
]
}
],
"private": true,
"privateProjects": [],
"supportedRegions": ["us-central1.gcp", "europe-west1.gcp"],
"hasChanges": false,
"alreadyListed": false,
"status": "Draft",
"isPreviewable": "none"
}Update ConnectorStaged by Key
manage_project:{projectKey}manage_connectors:{projectKey}keyString ​ | key of the ConnectorStaged |
regionString ​ | Region in which the Project is hosted. |
application/jsonversion​Int​ | Expected version of the Connector on which the changes apply. |
actions​Array of ConnectorUpdateAction​ | Update actions to be performed on the Connector. |
application/jsoncurl https://connect.{region}.commercetools.com/connectors/drafts/key={key} -i \
--header "Authorization: Bearer ${BEARER_TOKEN}" \
--header 'Content-Type: application/json' \
--data-binary @- << DATA
{
"version" : 1,
"actions" : [ {
"action" : "setName",
"name" : "New Connector name"
} ]
}
DATA{
"id": "5ab3edcd-9d23-4934-8f48-256805253119",
"key": "connector-key",
"version": 2,
"name": "New Connector name",
"description": "Connector's description",
"integrationTypes": ["other"],
"creator": {
"title": "Mr",
"name": "John Doe",
"email": "john.doe@example.com",
"company": "commercetools",
"noOfContributors": 200
},
"repository": {
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
},
"configurations": [
{
"applicationName": "app-1",
"applicationType": "service",
"standardConfiguration": [
{
"key": "CONFIG_KEY",
"description": "config key description"
}
],
"securedConfiguration": [
{
"key": "CONFIG_SECRET_KEY",
"description": "config secret description"
}
]
}
],
"private": true,
"privateProjects": [],
"supportedRegions": ["us-central1.gcp", "europe-west1.gcp"],
"hasChanges": false,
"alreadyListed": false,
"status": "Draft",
"isPreviewable": "none"
}Update actions
Update Connector
Set Name
Updates the name of the Connector.
action​String​ | "setName" |
name​String​ | Value to set. |
{
"action": "setName",
"name": "The new name of the Connector"
}Set Description
Updates the description of the Connector.
action​String​ | "setDescription" |
description​String​ | Value to set. |
{
"action": "setDescription",
"description": "New description of the Connector."
}Set Repository
Updates the GitHub repository details of the Connector.
action​String​ | "setRepository" |
url​String​ | New HTTPS or SSH GitHub URL to assign to the Connector. |
tag​String​ | New Git tag to assign to the Connector. |
{
"action": "setRepository",
"url": "git@github.com:commercetools/connect-application-kit.git",
"tag": "0.0.0"
}Set Supported Region
Updates the regions that the Connector can be deployed in.
action​String​ | "setSupportedRegions" |
regions​Array of Region​ | New value to set. MinItems:Â1​ |
{
"action": "setSupportedRegions",
"regions": [
"europe-west1.gcp",
"us-central1.gcp",
"australia-southeast1.gcp"
]
}Set Documentation URL
Updates the documentation URL of the Connector.
action​String​ | "setDocumentationUrl" |
documentationUrl​String​ | Value to set. |
{
"action": "setDocumentationUrl",
"documentationUrl": "https://www.example.com/my-connector/documentation"
}Set Integration Types
Updates the integration types of the Connector.
action​String​ | "setIntegrationTypes" |
integrationTypes​Array of IntegrationType​ | New value to set. |
{
"action": "setIntegrationTypes",
"integrationTypes": [
"promotion",
"other"
]
}Update Creator
creator.Set Name
Updates the name of the creator.
action​String​ | "setCreatorName" |
creatorName​String​ | Value to set. |
{
"action": "setCreatorName",
"creatorName": "Jane Doe"
}Set Title
Updates the title of the creator.
action​String​ | "setCreatorTitle" |
creatorTitle​String​ | Value to set. |
{
"action": "setCreatorTitle",
"creatorTitle": "Ms"
}Set Email
Updates the email address of the creator.
action​String​ | "setCreatorEmail" |
creatorEmail​String​ | Value to set. |
{
"action": "setCreatorEmail",
"creatorEmail": "new-email-address@example.com"
}Set Company
Updates the company of the creator.
action​String​ | "setCreatorCompany" |
creatorCompany​String​ | Value to set. |
{
"action": "setCreatorCompany",
"creatorCompany": "New name of company"
}Set Number of Contributors
Updates the number of contributors of the creator.
action​String​ | "setCreatorNoOfContributors" |
creatorNoOfContributors​Int​ | Value to set. Minimum:Â1​ |
{
"action": "setCreatorNoOfContributors",
"creatorNoOfContributors": 123
}Set Support URL
Updates the support URL of the creator.
action​String​ | "setCreatorSupportUrl" |
creatorSupportUrl​String​ | Value to set. |
{
"action": "setCreatorSupportUrl",
"creatorSupportUrl": "https://www.example.com/support"
}Set Creator Logo
Updates the logo of the creator.
action​String​ | "setCreatorLogo" |
logoUrl​String​ | Value to set. |
{
"action": "setCreatorLogo",
"logoUrl": "https://www.example.com/logo.png"
}Update Availability of Connector
Add Project to Private Connector
Allow a Composable Commerce Project to access a private Connector.
privateProject to a non-private ConnectorStaged returns the ConnectorStagedNotPrivate error.action​String​ | "addPrivateProject" |
privateProject​ | The Composable Commerce Project to add to Pattern: privateProjects.^[a-zA-Z0-9-_.]+:[a-zA-Z0-9-_]{2,36}$​ |
{
"action": "addPrivateProject",
"privateProject": "europe-west1.gcp:example-project-key"
}Remove Project from Private Connector
Remove a Composable Commerce Project's access to a private Connector.
privateProject from a non-private ConnectorStaged returns the ConnectorStagedNotPrivate error.action​String​ | "removePrivateProject" |
privateProject​ | The Composable Commerce Project to remove from Pattern: privateProjects.^[a-zA-Z0-9-_.]+:[a-zA-Z0-9-_]{2,36}$​ |
{
"action": "removePrivateProject",
"privateProject": "europe-west1.gcp:example-project-key"
}Preview Connector
privateProjects.isPreviewable will change to pending. Following validation, the status of isPreviewable will change to true if the previewable status is granted, or false if it is rejected.
In the case of a false status, contact the Connect support team regarding any issues raised during the validation process.action​String​ | "updatePreviewable" |
{
"action": "updatePreviewable"
}Publish and Certify
Publish
Starts the Connector publishing process. You will be unable to update the Connector until the process completes.
certification should only be true if you want to make the Connector publicly available.action​String​ | "publish" |
certification​Boolean​ |
|
{
"action": "publish",
"certification": false
}Unlist
Removes a certified and listed Connector from search results and listings. This update action does not affect deployed instances of the Connector.
action​String​ | "unlist" |
{
"action": "unlist"
}Add Certification Comment
Add a comment during the certification process of the Connector.
action​String​ | "addCertificationComment" |
comment​String​ | Comment to add. |
{
"action": "addCertificationComment",
"comment": "The comment to add."
}