createIntegration
Create integration
POST
/v1/admin/integrationsAuthorization
AuthorizationBearerBearer authentication header of the form Bearer <token>, where <token> is your auth token.
Header parameters
x-workspace-idstringWorkspace ID
x-multiple-integrations?stringWhether the client supports bots with multiple instances of the same integration. Set to "true" to receive integration instances keyed by their alias instead of their id. This header will be removed in the future, and the API will always return multiple instances keyed by alias.
Request body
Integration
namestringName of the Integration(max length: 200)
versionstringVersion of the Integration(max length: 200)
configuration?objectDefault configuration definition of the integration
configurations?objectAdditional configuration definitions of the integration
states?objectevents?objectactions?objectentities?objectidentifier?objectchannels?objectuser?objectinterfaces?objectextraOperations?object**EXPERIMENTAL** Extra integration operations that should be sent or not to the integration instances. The key is the operation name.
sdkVersion?string(max length: 200)
secrets?objectSecrets are integration-wide values available in the code via environment variables formatted with a SECRET_ prefix followed by your secret name. A secret name must respect SCREAMING_SNAKE casing.
code?stringJavaScript code of the integration
url?stringURL of the integration
dev?booleanIndicates if the integration is a development integration; Dev integrations run locally
icon?stringBase64 encoded svg of the integration icon. This icon is global to the integration each versions will be updated when this changes.
readme?stringBase64 encoded markdown of the integration readme. The readme is specific to each integration versions.
title?stringTitle of the integration. This is the name that will be displayed in the UI(min length: 1, max length: 64)
description?stringDescription of the integration. This is the description that will be displayed in the UI(max length: 256)
public?booleandeprecated[DEPRECATED] Indicates whether the integration is public. Please use the "visibility" parameter instead.
visibility?enum<string>The integration's visibility. Public integrations are available to all and cannot be updated without creating a new version. Unlisted integrations behave identically to public integrations, but they are not listed in the integration hub. By default, integrations are private and only accessible to the workspace that created them.
Available options:
"public","private","unlisted"layers?string[]attributes?objectOptional key-value attributes from the integration definition
Response
Success
integrationobject