POST
/v1/organizations/{organizationId}/projects/{projectId}/environments/{environmentId}/surface-registrationsRegister a Surface provider application in an Environment
Register an Organization-owned provider application as a delivery Surface in one Environment.
Authentication
Send an API key as a Bearer token in the Authorization header.
Parameters
Request body
Required.
application/jsonobject- unknown properties allowed
false
providerApplicationIdrequiredstringThe Organization-owned provider application to register in this Environment.- maximum length
64 - pattern
^provider_app_[\s\S]+$
- maximum length
displayNamerequiredstringThe human-readable Surface registration name.- maximum length
200 - minimum length
1
- maximum length
trustedUserDelegateAppIds
Responses
201SurfaceRegistrationCreatedapplication/json400The request path, headers, query, or JSON body did not satisfy the published schema401Unauthorizedapplication/json403Forbiddenapplication/json404NotFoundapplication/json409Conflictapplication/jsonReusable schemas
SurfaceRegistrationCreated
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.
TrustedUserDelegateAppIds
array- at most items
32 - unique items
true
Items
string- maximum length
256 - minimum length
2 - pattern
^A[A-Z0-9]+$
SlackSurfaceRegistration
object- unknown properties allowed
false
surfaceRegistrationIdrequiredstringThe Environment Surface registration identifier.- maximum length
64 - pattern
^surface_[\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
providerApplicationIdrequiredstringThe Organization-owned provider application identifier.- maximum length
64 - pattern
^provider_app_[\s\S]+$
- maximum length
providerAppIdrequiredstringThe provider's stable application identifier.displayNamerequiredstringThe human-readable resource name.statusrequired- SurfaceRegistrationStatusThe current lifecycle status.
trustedUserDelegateAppIdsrequired- TrustedUserDelegateAppIdsThe Slack applications trusted to transmit messages under human credentials.
trustedUserDelegateAppsEtagrequiredstringThe strong ETag for the complete trusted human-delegating application set.- maximum length
73 - minimum length
73 - pattern
^"sha256:[0-9a-f]{64}"$
- maximum length
createdAtrequiredstringWhen the resource was created, in UTC.- format
date-time
- format
providerrequiredstringThe model, Surface, or integration provider key.- allowed values
"slack"
- allowed values
capabilitiesrequired- SlackSurfaceCapabilitiesThe delivery and interaction capabilities of the registered Surface.
WebSurfaceRegistration
object- unknown properties allowed
false
surfaceRegistrationIdrequiredstringThe Environment Surface registration identifier.- maximum length
64 - pattern
^surface_[\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
providerApplicationIdrequiredstringThe Organization-owned provider application identifier.- maximum length
64 - pattern
^provider_app_[\s\S]+$
- maximum length
providerAppIdrequiredstringThe provider's stable application identifier.displayNamerequiredstringThe human-readable resource name.statusrequired- SurfaceRegistrationStatusThe current lifecycle status.
trustedUserDelegateAppIdsrequired- TrustedUserDelegateAppIdsThe Slack applications trusted to transmit messages under human credentials.
trustedUserDelegateAppsEtagrequiredstringThe strong ETag for the complete trusted human-delegating application set.- maximum length
73 - minimum length
73 - pattern
^"sha256:[0-9a-f]{64}"$
- maximum length
createdAtrequiredstringWhen the resource was created, in UTC.- format
date-time
- format
providerrequiredstringThe model, Surface, or integration provider key.- allowed values
"web"
- allowed values
capabilitiesrequired- WebSurfaceCapabilitiesThe delivery and interaction capabilities of the registered Surface.
SurfaceRegistrationStatus
string- allowed values
"active", "disabled"
SlackSurfaceCapabilities
object- unknown properties allowed
false
participantModelrequiredstringWhether a conversation has one participant or a shared audience.- allowed values
"multi"
- allowed values
addressingrequiredstringHow a participant addresses the Agent on this Surface.- allowed values
"mention"
- allowed values
threadingrequiredstringHow the Surface groups replies into threads.- allowed values
"thread"
- allowed values
reactionsrequiredarrayThe provider-native reactions the Surface adapter can deliver.- at most items
2 - at least items
2
- at most items
progressrequiredstringHow the Surface presents progress while work runs.- allowed values
"edit-in-place"
- allowed values
approvalAffordancerequiredstringHow the Surface presents an approval request.- allowed values
"signed-interaction"
- allowed values
deliveryIdentityrequiredstringWhether delivery uses a provider-owned or Cantora-owned identity.- allowed values
"cantora-key"
- allowed values
transportrequiredstringThe provider transport used to receive and deliver messages.- allowed values
"webhook-and-call"
- allowed values
WebSurfaceCapabilities
object- unknown properties allowed
false
participantModelrequiredstringWhether a conversation has one participant or a shared audience.- allowed values
"single"
- allowed values
addressingrequiredstringHow a participant addresses the Agent on this Surface.- allowed values
"implicit"
- allowed values
threadingrequiredstringHow the Surface groups replies into threads.- allowed values
"none"
- allowed values
reactionsrequiredarrayThe provider-native reactions the Surface adapter can deliver.ItemsfalseprogressrequiredstringHow the Surface presents progress while work runs.- allowed values
"stream"
- allowed values
approvalAffordancerequiredstringHow the Surface presents an approval request.- allowed values
"authenticated-view"
- allowed values
deliveryIdentityrequiredstringWhether delivery uses a provider-owned or Cantora-owned identity.- allowed values
"cantora-key"
- allowed values
transportrequiredstringThe provider transport used to receive and deliver messages.- allowed values
"subscription"
- allowed values