POST
/v1/organizations/{organizationId}/projects/{projectId}/environments/{environmentId}/surface-registrations/{surfaceRegistrationId}/tenants/{tenantId}/connectionsConnect one Tenant workspace to a registered Surface
Install a Tenant-scoped provider Connection beneath an Environment Surface registration; the bot credential is write-only.
Authentication
Send an API key as a Bearer token in the Authorization header.
Parameters
Request body
Required.
application/jsonobject- unknown properties allowed
false
providerrequiredstringThe Surface provider this Connection authorizes.- allowed values
"slack"
- allowed values
providerIssuerrequiredstringThe provider account or workspace in which this Connection is installed.- maximum length
512 - minimum length
1 - pattern
^[!-~]+$
- maximum length
botTokenrequiredstringThe write-only provider bot credential used to deliver messages.- maximum length
8192 - minimum length
1 - write only
true
- maximum length
Responses
201ConnectionCreatedapplication/json400The request path, headers, query, or JSON body did not satisfy the published schema401Unauthorizedapplication/json403Forbiddenapplication/json404NotFoundapplication/json409Conflictapplication/jsonReusable schemas
ConnectionCreatedEncoded
object- unknown properties allowed
false
connectionIdrequiredstringThe installed provider Connection identifier.- maximum length
64 - pattern
^connection_[\s\S]+$
- maximum length
organizationIdrequiredstringThe Organization identifier.- maximum length
64 - pattern
^org_[\s\S]+$
- maximum length
projectIdrequiredstringThe Project identifier.- maximum length
64 - pattern
^proj_[\s\S]+$
- maximum length
environmentIdrequiredstringThe Environment identifier.- maximum length
64 - pattern
^env_[\s\S]+$
- maximum length
tenantIdrequiredstringThe Tenant identifier.- maximum length
64 - pattern
^tenant_[\s\S]+$
- maximum length
surfaceRegistrationIdrequiredstringThe Environment Surface registration identifier.- maximum length
64 - pattern
^surface_[\s\S]+$
- maximum length
providerrequiredstringThe model, Surface, or integration provider key.- allowed values
"slack"
- allowed values
providerIssuerrequiredstringThe provider account or workspace boundary.- maximum length
512 - minimum length
1 - pattern
^[!-~]+$
- maximum length
credentialGenerationrequiredintegerThe current credential generation, incremented on rotation.- greater than
0
- greater than
etagrequiredstringThe strong ETag required for the next conditional mutation.- maximum length
12 - pattern
^"(?:[1-9][0-9]{0,9})"$
- maximum length
statusrequired- ConnectionStatusThe current lifecycle status.
createdAtrequiredstringWhen the resource was created, in UTC.- format
date-time
- format
UnauthorizedEncoded
object- unknown properties allowed
false
_tagrequiredstringThe stable machine-readable error type.- allowed values
"Unauthorized"
- allowed values
reasonrequiredstringA safe explanation of why the credential was rejected.
ForbiddenEncoded
object- unknown properties allowed
false
_tagrequiredstringThe stable machine-readable error type.- allowed values
"Forbidden"
- allowed values
permissionrequiredstringThe permission required by the refused operation.
NotFoundEncoded
object- unknown properties allowed
false
_tagrequiredstringThe stable machine-readable error type.- allowed values
"NotFound"
- allowed values
resourcerequiredstringThe resource type relevant to the error.idrequiredstringThe identifier supplied for the resource that was not found.
ConflictEncoded
object- unknown properties allowed
false
_tagrequiredstringThe stable machine-readable error type.- allowed values
"Conflict"
- allowed values
resourcerequiredstringThe resource type relevant to the error.reasonrequiredstringA safe explanation of the state conflict.
ConnectionStatus
string- allowed values
"active", "disabled", "reauthorizationRequired"