@botpress/api 1.45.0 → 1.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-openapi.log +5 -5
- package/dist/index.js +27 -7
- package/dist/src/gen/runtime/state.d.ts +5 -0
- package/dist/src/gen/state.d.ts +5 -0
- package/package.json +1 -1
- package/src/gen/admin/openapi.json +1 -1
- package/src/gen/admin/state.ts +4 -2
- package/src/gen/files/openapi.json +1 -1
- package/src/gen/files/state.ts +1 -1
- package/src/gen/openapi.json +1 -1
- package/src/gen/runtime/openapi.json +1 -1
- package/src/gen/runtime/state.ts +9 -1
- package/src/gen/state.ts +12 -2
- package/src/gen/tables/openapi.json +1 -1
- package/src/gen/tables/state.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"openapi":"3.0.0","servers":[{"url":"https://api.botpress.cloud"}],"info":{"title":"Botpress API","description":"API for Botpress Cloud","version":"1.45.0"},"paths":{"/v1/chat/conversations":{"post":{"operationId":"createConversation","description":"Creates a new [Conversation](#schema_conversation). When creating a new [Conversation](#schema_conversation), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createConversationResponse"},"default":{"$ref":"#/components/responses/createConversationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createConversationBody"}},"get":{"operationId":"listConversations","description":"Retrieves a list of [Conversation](#schema_conversation) you’ve previously created. The conversations are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](#tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"sortField","in":"query","description":"Sort results by this field","schema":{"type":"string","enum":["createdAt","updatedAt"]}},{"name":"sortDirection","in":"query","description":"Sort results in this direction","schema":{"type":"string","enum":["asc","desc"]}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}},{"name":"participantIds","in":"query","description":"Filter by participant ids","schema":{"type":"array","items":{"type":"string"}}},{"name":"integrationName","in":"query","description":"Filter by integration name","schema":{"type":"string"}},{"name":"channel","in":"query","description":"Filter by integration channel name","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listConversationsResponse"},"default":{"$ref":"#/components/responses/listConversationsResponse"}}}},"/v1/chat/conversations/{id}":{"get":{"operationId":"getConversation","description":"Retrieves the [Conversation](#schema_conversation) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getConversationResponse"},"default":{"$ref":"#/components/responses/getConversationResponse"}}},"put":{"operationId":"updateConversation","description":"Update a [Conversation](#schema_conversation) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateConversationResponse"},"default":{"$ref":"#/components/responses/updateConversationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateConversationBody"}},"delete":{"operationId":"deleteConversation","description":"Permanently deletes a [Conversation](#schema_conversation). It cannot be undone. Also immediately deletes corresponding [Messages](#schema_message).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteConversationResponse"},"default":{"$ref":"#/components/responses/deleteConversationResponse"}}}},"/v1/chat/conversations/get-or-create":{"post":{"operationId":"getOrCreateConversation","description":"Retrieves the [Conversation](#schema_conversation) object for a valid identifier. If the conversation does not exist, it will be created.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateConversationResponse"},"default":{"$ref":"#/components/responses/getOrCreateConversationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateConversationBody"}}},"/v1/chat/conversations/{id}/participants":{"get":{"operationId":"listParticipants","description":"Retrieves a list of [Participant](#schema_participant) for a given [Conversation](#schema_conversation).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listParticipantsResponse"},"default":{"$ref":"#/components/responses/listParticipantsResponse"}}},"post":{"operationId":"addParticipant","description":"Add a [Participant](#schema_participant) to a [Conversation](#schema_conversation).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/addParticipantResponse"},"default":{"$ref":"#/components/responses/addParticipantResponse"}},"requestBody":{"$ref":"#/components/requestBodies/addParticipantBody"}}},"/v1/chat/conversations/{id}/participants/{userId}":{"get":{"operationId":"getParticipant","description":"Retrieves a [Participant](#schema_participant) from a [Conversation](#schema_conversation).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"User id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getParticipantResponse"},"default":{"$ref":"#/components/responses/getParticipantResponse"}}},"delete":{"operationId":"removeParticipant","description":"Remove a [Participant](#schema_participant) from a [Conversation](#schema_conversation).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"User id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/removeParticipantResponse"},"default":{"$ref":"#/components/responses/removeParticipantResponse"}}}},"/v1/chat/events":{"post":{"operationId":"createEvent","description":"Creates a new [Event](#schema_event). When creating a new [Event](#schema_event), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createEventResponse"},"default":{"$ref":"#/components/responses/createEventResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createEventBody"}},"get":{"operationId":"listEvents","description":"Retrieves a list of [Event](#schema_event) you’ve previously created. The events are returned in sorted order, with the most recent appearing first.","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"type","in":"query","description":"Filter by event type","schema":{"type":"string"}},{"name":"conversationId","in":"query","description":"Filter by conversation id","schema":{"type":"string"}},{"name":"userId","in":"query","description":"Filter by user id","schema":{"type":"string"}},{"name":"messageId","in":"query","description":"Filter by message id","schema":{"type":"string"}},{"name":"workflowId","in":"query","description":"Filter by workflow id","schema":{"type":"string"}},{"name":"status","in":"query","description":"Filter by status. Allowed values: pending, ignored, processed, failed.","schema":{"type":"string","enum":["pending","ignored","processed","failed","scheduled"]}}],"responses":{"200":{"$ref":"#/components/responses/listEventsResponse"},"default":{"$ref":"#/components/responses/listEventsResponse"}}}},"/v1/chat/events/{id}":{"get":{"operationId":"getEvent","description":"Retrieves the [Event](#schema_event) object for a valid identifiers.","parameters":[{"name":"id","in":"path","description":"Event id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getEventResponse"},"default":{"$ref":"#/components/responses/getEventResponse"}}}},"/v1/chat/messages":{"post":{"operationId":"createMessage","description":"Creates a new [Message](#schema_message). When creating a new [Message](#schema_message), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createMessageResponse"},"default":{"$ref":"#/components/responses/createMessageResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createMessageBody"}},"get":{"operationId":"listMessages","description":"Retrieves a list of [Message](#schema_message) you’ve previously created. The messages are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"conversationId","in":"query","description":"Conversation id","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}}],"responses":{"200":{"$ref":"#/components/responses/listMessagesResponse"},"default":{"$ref":"#/components/responses/listMessagesResponse"}}}},"/v1/chat/messages/get-or-create":{"post":{"operationId":"getOrCreateMessage","description":"Retrieves the [Message](#schema_message) object for a valid identifier. If the message does not exist, it will be created.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateMessageResponse"},"default":{"$ref":"#/components/responses/getOrCreateMessageResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateMessageBody"}}},"/v1/chat/messages/{id}":{"get":{"operationId":"getMessage","description":"Retrieves the [Message](#schema_message) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Id of the Message","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getMessageResponse"},"default":{"$ref":"#/components/responses/getMessageResponse"}}},"put":{"operationId":"updateMessage","description":"Updates a message tags and payload. The message type cannot be changed. Calling this operation from an integration, to update an incoming message, will not invoke the bot. The other way around it also true; Calling this operation from the bot, to update an outgoing message, will not invoke the integration.","parameters":[{"name":"id","in":"path","description":"Message id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateMessageResponse"},"default":{"$ref":"#/components/responses/updateMessageResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateMessageBody"}},"delete":{"operationId":"deleteMessage","description":"Permanently deletes a [Message](#schema_message). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"Message id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteMessageResponse"},"default":{"$ref":"#/components/responses/deleteMessageResponse"}}}},"/v1/chat/users":{"post":{"operationId":"createUser","description":"Creates a new [User](#schema_user). When creating a new [User](#schema_user), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createUserResponse"},"default":{"$ref":"#/components/responses/createUserResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createUserBody"}},"get":{"operationId":"listUsers","description":"Retrieves a list of [User](#schema_user) previously created. The users are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"conversationId","in":"query","description":"Filter by conversation id. This will return all users that have participated in the conversation.","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}}],"responses":{"200":{"$ref":"#/components/responses/listUsersResponse"},"default":{"$ref":"#/components/responses/listUsersResponse"}}}},"/v1/chat/users/{id}":{"get":{"operationId":"getUser","description":"Retrieves the [User](#schema_user) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"User ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getUserResponse"},"default":{"$ref":"#/components/responses/getUserResponse"}}},"put":{"operationId":"updateUser","description":"Update a [User](#schema_user) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"User ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateUserResponse"},"default":{"$ref":"#/components/responses/updateUserResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateUserBody"}},"delete":{"operationId":"deleteUser","description":"Permanently deletes a [User](#schema_user). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"User ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteUserResponse"},"default":{"$ref":"#/components/responses/deleteUserResponse"}}}},"/v1/chat/users/get-or-create":{"post":{"operationId":"getOrCreateUser","description":"Retrieves the [User](#schema_user) object for a valid identifier. If the user does not exist, it will be created.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateUserResponse"},"default":{"$ref":"#/components/responses/getOrCreateUserResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateUserBody"}}},"/v1/chat/states/{type}/{id}/{name}/expiry":{"post":{"operationId":"setStateExpiry","description":"Updates the [State](#schema_state) expiry.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/setStateExpiryResponse"},"default":{"$ref":"#/components/responses/setStateExpiryResponse"}},"requestBody":{"$ref":"#/components/requestBodies/setStateExpiryBody"}}},"/v1/chat/states/{type}/{id}/{name}":{"get":{"operationId":"getState","description":"Retrieves the [State](#schema_state) object for a valid identifiers.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getStateResponse"},"default":{"$ref":"#/components/responses/getStateResponse"}}},"post":{"operationId":"setState","description":"Overrides the [State](#schema_state) object by setting the values of the parameters passed.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/setStateResponse"},"default":{"$ref":"#/components/responses/setStateResponse"}},"requestBody":{"$ref":"#/components/requestBodies/setStateBody"}},"patch":{"operationId":"patchState","description":"Updates the [State](#schema_state) object by setting the values of the parameters passed.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/patchStateResponse"},"default":{"$ref":"#/components/responses/patchStateResponse"}},"requestBody":{"$ref":"#/components/requestBodies/patchStateBody"}}},"/v1/chat/states/{type}/{id}/{name}/get-or-set":{"post":{"operationId":"getOrSetState","description":"Retrieves the [State](#schema_state) object for a valid identifiers. If the state does not exist, it creates a new state.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getOrSetStateResponse"},"default":{"$ref":"#/components/responses/getOrSetStateResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrSetStateBody"}}},"/v1/chat/actions":{"post":{"operationId":"callAction","description":"Call an action","parameters":[],"responses":{"200":{"$ref":"#/components/responses/callActionResponse"},"default":{"$ref":"#/components/responses/callActionResponse"}},"requestBody":{"$ref":"#/components/requestBodies/callActionBody"}}},"/v1/chat/integrations/configure":{"post":{"operationId":"configureIntegration","description":"An integration can call this endpoint to configure itself","parameters":[],"responses":{"200":{"$ref":"#/components/responses/configureIntegrationResponse"},"default":{"$ref":"#/components/responses/configureIntegrationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/configureIntegrationBody"}}},"/v1/chat/tasks/{id}":{"get":{"operationId":"getTask","description":"Retrieves the [Task](#schema_task) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Task id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getTaskResponse"},"default":{"$ref":"#/components/responses/getTaskResponse"}}},"put":{"operationId":"updateTask","description":"Update a [Task](#schema_task) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"Task id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateTaskResponse"},"default":{"$ref":"#/components/responses/updateTaskResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateTaskBody"}},"delete":{"operationId":"deleteTask","description":"Permanently deletes a [Task](#schema_task). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"Task id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteTaskResponse"},"default":{"$ref":"#/components/responses/deleteTaskResponse"}}}},"/v1/chat/tasks":{"post":{"operationId":"createTask","description":"Creates a new [Task](#schema_task). When creating a new [Task](#schema_task), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createTaskResponse"},"default":{"$ref":"#/components/responses/createTaskResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createTaskBody"}},"get":{"operationId":"listTasks","description":"Retrieves a list of [Task](#schema_task) you've previously created. The tasks are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}},{"name":"conversationId","in":"query","description":"Conversation id","schema":{"type":"string"}},{"name":"userId","in":"query","description":"User id","schema":{"type":"string"}},{"name":"parentTaskId","in":"query","description":"Parent task id","schema":{"type":"string"}},{"name":"status","in":"query","description":"Status","schema":{"type":"array","items":{"type":"string","enum":["pending","in_progress","failed","completed","blocked","paused","timeout","cancelled"]}}},{"name":"type","in":"query","description":"Type","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listTasksResponse"},"default":{"$ref":"#/components/responses/listTasksResponse"}}}},"/v1/chat/workflows":{"post":{"operationId":"createWorkflow","description":"Creates a new [Workflow](#schema_workflow).","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createWorkflowResponse"},"default":{"$ref":"#/components/responses/createWorkflowResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createWorkflowBody"}},"get":{"operationId":"listWorkflows","description":"Retrieves a list of [Workflow](#schema_workflow) you've previously created. The workflows are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}},{"name":"conversationId","in":"query","description":"Conversation id","schema":{"type":"string"}},{"name":"userId","in":"query","description":"User id","schema":{"type":"string"}},{"name":"parentWorkflowId","in":"query","description":"Parent workflow id","schema":{"type":"string"}},{"name":"statuses","in":"query","description":"Status","schema":{"type":"array","items":{"type":"string","enum":["pending","in_progress","failed","completed","listening","paused","timedout","cancelled"]}}},{"name":"name","in":"query","description":"Workflow name","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listWorkflowsResponse"},"default":{"$ref":"#/components/responses/listWorkflowsResponse"}}}},"/v1/chat/workflows/{id}":{"get":{"operationId":"getWorkflow","description":"Retrieves the [Workflow](#schema_workflow) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Workflow id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getWorkflowResponse"},"default":{"$ref":"#/components/responses/getWorkflowResponse"}}},"put":{"operationId":"updateWorkflow","description":"Update a [Workflow](#schema_workflow) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"Workflow id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateWorkflowResponse"},"default":{"$ref":"#/components/responses/updateWorkflowResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateWorkflowBody"}},"delete":{"operationId":"deleteWorkflow","description":"Permanently deletes a [Workflow](#schema_workflow). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"Workflow id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteWorkflowResponse"},"default":{"$ref":"#/components/responses/deleteWorkflowResponse"}}}},"/v1/chat/workflows/get-or-create":{"post":{"operationId":"getOrCreateWorkflow","description":"Get a workflow by tags or creates a new [Workflow](#schema_workflow) if it doesn't exists.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateWorkflowResponse"},"default":{"$ref":"#/components/responses/getOrCreateWorkflowResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateWorkflowBody"}}},"/v1/chat/tags/{key}/values":{"get":{"operationId":"listTagValues","description":"Get a bot tag values","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"key","in":"path","description":"Tag key","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"Tag type","required":true,"schema":{"type":"string","enum":["user","conversation","message"]}}],"responses":{"200":{"$ref":"#/components/responses/listTagValuesResponse"},"default":{"$ref":"#/components/responses/listTagValuesResponse"}}}},"/v1/chat/analytics":{"post":{"operationId":"trackAnalytics","description":"Add an event to the analytics","parameters":[],"responses":{"200":{"$ref":"#/components/responses/trackAnalyticsResponse"},"default":{"$ref":"#/components/responses/trackAnalyticsResponse"}},"requestBody":{"$ref":"#/components/requestBodies/trackAnalyticsBody"}}}},"components":{"schemas":{"Bot":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Bot](#schema_bot)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Bot](#schema_bot) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Bot](#schema_bot) in ISO 8601 format"},"signingSecret":{"type":"string","maxLength":2000,"description":"Signing secret of the [Bot](#schema_bot)"},"integrations":{"type":"object","additionalProperties":{"type":"object","properties":{"enabled":{"type":"boolean"},"name":{"type":"string","maxLength":200,"description":"Name of the [Integration](#schema_integration)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Integration](#schema_integration)"},"webhookUrl":{"type":"string","maxLength":2000},"webhookId":{"type":"string","maxLength":200},"identifier":{"type":"string","maxLength":2000},"configurationType":{"type":"string","maxLength":200,"nullable":true},"configuration":{"type":"object","additionalProperties":true},"status":{"type":"string","enum":["registration_pending","registered","registration_failed","unregistration_pending","unregistered","unregistration_failed"]},"statusReason":{"type":"string","maxLength":2000,"nullable":true},"disabledChannels":{"type":"array","items":{"type":"string","description":"Channel name"},"description":"Disabled channels for this integration"},"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Integration](#schema_integration)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Integration](#schema_integration) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Integration](#schema_integration) in ISO 8601 format"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the integration. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the integration. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the integration. This is the icon that will be displayed in the UI"},"public":{"type":"boolean","description":"[DEPRECATED] Indicates whether the integration is public. Please use the \"visibility\" parameter instead.","deprecated":true},"visibility":{"type":"string","enum":["public","private","unlisted"],"description":"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."},"verificationStatus":{"type":"string","enum":["unapproved","pending","approved","rejected"],"description":"Status of the integration version verification"}},"required":["enabled","name","version","webhookUrl","webhookId","configurationType","configuration","status","statusReason","disabledChannels","id","createdAt","updatedAt","title","description","iconUrl","public","visibility","verificationStatus"],"additionalProperties":false},"description":"A mapping of integrations to their configuration. If the `x-multiple-integrations` header is present, this object is keyed by integration aliases. Otherwise, this object is keyed by integration ids."},"plugins":{"type":"object","additionalProperties":{"type":"object","properties":{"enabled":{"type":"boolean"},"name":{"type":"string","maxLength":200,"description":"Name of the [Plugin](#schema_plugin)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Plugin](#schema_plugin)"},"configuration":{"type":"object","additionalProperties":true},"interfaces":{"type":"object","additionalProperties":{"type":"object","properties":{"integrationId":{"type":"string","minLength":28,"maxLength":36},"integrationAlias":{"type":"string","maxLength":200},"integrationInterfaceAlias":{"type":"string","maxLength":200},"interfaceId":{"type":"string","minLength":28,"maxLength":36}},"required":["integrationId","integrationAlias","interfaceId"],"additionalProperties":false},"description":"A mapping of plugin interface aliases to their backing integrations"},"integrations":{"type":"object","additionalProperties":{"type":"object","properties":{"integrationId":{"type":"string","minLength":28,"maxLength":36},"integrationAlias":{"type":"string","maxLength":200}},"required":["integrationId","integrationAlias"],"additionalProperties":false},"description":"A mapping of plugin integration aliases to their backing integrations"},"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Plugin](#schema_plugin)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Plugin](#schema_plugin) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Plugin](#schema_plugin) in ISO 8601 format"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the plugin. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the plugin. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the plugin. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the plugin. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"Indicates if the plugin is public. Public plugins are available to all and cannot be updated without creating a new version."}},"required":["enabled","name","version","configuration","id","createdAt","updatedAt","title","description","iconUrl","readmeUrl","public"],"additionalProperties":false},"description":"A mapping of plugin aliases to their configuration"},"maxExecutionTime":{"type":"number","description":"Maximum execution time of the bot (in seconds)."},"user":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"User object configuration","additionalProperties":false},"conversation":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Conversation object configuration","additionalProperties":false},"message":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Message object configuration","additionalProperties":false},"states":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["conversation","user","bot","task"],"description":"Type of the [State](#schema_state) (`conversation`, `user`, `bot` or `task`)"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the [State](#schema_state) in the `JSON schema` format. This `JSON schema` is going to be used for validating the state data."},"expiry":{"type":"number","minimum":1,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["type","schema"],"additionalProperties":false},"description":"A mapping of states to their definition"},"configuration":{"type":"object","properties":{"data":{"type":"object","additionalProperties":true,"description":"Configuration data"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["data","schema"],"description":"Configuration of the bot","additionalProperties":false},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false},"description":"Events definition"},"recurringEvents":{"type":"object","additionalProperties":{"type":"object","properties":{"schedule":{"type":"object","properties":{"cron":{"type":"string","maxLength":200}},"required":["cron"],"additionalProperties":false},"type":{"type":"string","maxLength":200},"payload":{"type":"object","additionalProperties":true},"failedAttempts":{"type":"number","description":"The number of times the recurring event failed to run. This counter resets once the recurring event runs successfully."},"lastFailureReason":{"type":"string","maxLength":2000,"description":"The reason why the recurring event failed to run in the last attempt.","nullable":true}},"required":["schedule","type","payload","failedAttempts","lastFailureReason"],"additionalProperties":false},"description":"Recurring events"},"subscriptions":{"type":"object","properties":{"events":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false},"nullable":true,"description":"Events that the bot is currently subscribed on (ex: \"slack:reactionAdded\"). If null, the bot is subscribed to all events."}},"required":["events"],"description":"Subscriptions of the bot","additionalProperties":false},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false},"description":"Actions definition"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Tags of [Bot](#schema_bot)"},"name":{"type":"string","description":"Name of the [Bot](#schema_bot)"},"deployedAt":{"type":"string","format":"date-time","description":"Last deployment date of the [Bot](#schema_bot) in the ISO 8601 format"},"dev":{"type":"boolean","description":"Indicates if the [Bot](#schema_bot) is a development bot; Development bots run locally and can install dev integrations"},"createdBy":{"type":"string","description":"Id of the user that created the bot"},"alwaysAlive":{"type":"boolean","description":"Indicates if the [Bot](#schema_bot) should be in always alive mode"},"status":{"type":"string","enum":["active","deploying"],"description":"Status of the bot"},"medias":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","description":"URL of the media file"},"name":{"type":"string","description":"Name of the media file"}},"required":["url","name"]},"description":"Media files associated with the [Bot](#schema_bot)"}},"required":["id","createdAt","updatedAt","signingSecret","integrations","plugins","user","conversation","message","states","configuration","events","recurringEvents","subscriptions","actions","tags","name","dev","alwaysAlive","status","medias"],"additionalProperties":false},"Integration":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Integration](#schema_integration)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Integration](#schema_integration) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Integration](#schema_integration) in ISO 8601 format"},"identifier":{"type":"object","properties":{"fallbackHandlerScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to handle incoming requests for a request that doesn't have an identifier"},"extractScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to extract the identifier from an incoming webhook often use for OAuth"}},"description":"Global identifier configuration of the [Integration](#schema_integration)","additionalProperties":false},"sandbox":{"type":"object","properties":{"identifierExtractScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to extract the identifier from an incoming webhook used specifically for the sandbox"},"messageExtractScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to extract the message from an incoming webhook used specifically for the sandbox"}},"additionalProperties":false},"maxExecutionTime":{"type":"number","description":"Maximum execution time of the integration (in seconds)."},"url":{"type":"string","maxLength":2000,"description":"URL of the [Integration](#schema_integration)"},"name":{"type":"string","maxLength":200,"description":"Name of the [Integration](#schema_integration)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Integration](#schema_integration)"},"interfaces":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the interface"},"name":{"type":"string","maxLength":200,"description":"Name of the interface"},"version":{"type":"string","maxLength":200,"description":"Version of the interface"},"entities":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}},"channels":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}}},"required":["id","name","version","entities","actions","events","channels"],"additionalProperties":false}},"configuration":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the configuration"},"description":{"type":"string","maxLength":256,"description":"Description of the configuration"},"identifier":{"type":"object","properties":{"linkTemplateScript":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["required"],"description":"Identifier configuration of the [Integration](#schema_integration)","additionalProperties":false},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["identifier","schema"],"description":"Configuration definition","additionalProperties":false},"configurations":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the configuration"},"description":{"type":"string","maxLength":256,"description":"Description of the configuration"},"identifier":{"type":"object","properties":{"linkTemplateScript":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["required"],"description":"Identifier configuration of the [Integration](#schema_integration)","additionalProperties":false},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["identifier","schema"],"description":"Configuration definition","additionalProperties":false}},"channels":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the channel"},"description":{"type":"string","maxLength":256,"description":"Description of the channel"},"messages":{"type":"object","additionalProperties":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Message definition","additionalProperties":false}},"conversation":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}},"creation":{"type":"object","properties":{"enabled":{"type":"boolean","description":"Enable conversation creation"},"requiredTags":{"type":"array","items":{"type":"string"},"description":"The list of tags that are required to be specified when calling the API directly to create a conversation."}},"required":["enabled","requiredTags"],"description":"The conversation creation setting determines how to create a conversation through the API directly. The integration will have to implement the `createConversation` functionality to support this setting.","additionalProperties":false}},"required":["tags","creation"],"description":"Conversation object configuration","additionalProperties":false},"message":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Message object configuration","additionalProperties":false}},"required":["messages","conversation","message"],"description":"Channel definition","additionalProperties":false}},"states":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["conversation","user","integration"],"description":"Type of the [State](#schema_state) (`conversation`, `user` or `integration`)"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the [State](#schema_state) in the `JSON schema` format. This `JSON schema` is going to be used for validating the state data."}},"required":["type","schema"],"description":"State definition","additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false}},"user":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}},"creation":{"type":"object","properties":{"enabled":{"type":"boolean","description":"Enable user creation"},"requiredTags":{"type":"array","items":{"type":"string"},"description":"The list of tags that are required to be specified when calling the API directly to create a user."}},"required":["enabled","requiredTags"],"description":"The user creation setting determines how to create a user through the API directly. The integration will have to implement the `createUser` functionality to support this setting.","additionalProperties":false}},"required":["tags","creation"],"description":"User object configuration","additionalProperties":false},"entities":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the entity"},"description":{"type":"string","maxLength":256,"description":"Description of the entity"},"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Entity definition","additionalProperties":false}},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"},"dev":{"type":"boolean","description":"Indicates if the integration is a development integration; Dev integrations run locally"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the integration. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the integration. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the integration. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the integration. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"[DEPRECATED] Indicates whether the integration is public. Please use the \"visibility\" parameter instead.","deprecated":true},"visibility":{"type":"string","enum":["public","private","unlisted"],"description":"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."},"verificationStatus":{"type":"string","enum":["unapproved","pending","approved","rejected"],"description":"Status of the integration version verification"},"secrets":{"type":"array","items":{"type":"string"},"description":"Secrets 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."}},"required":["id","createdAt","updatedAt","identifier","url","name","version","interfaces","configuration","configurations","channels","states","events","actions","user","entities","dev","title","description","iconUrl","readmeUrl","public","visibility","verificationStatus","secrets"],"additionalProperties":false},"Interface":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Interface](#schema_interface)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Interface](#schema_interface) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Interface](#schema_interface) in ISO 8601 format"},"name":{"type":"string","maxLength":200,"description":"Name of the [Interface](#schema_interface)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Interface](#schema_interface)"},"entities":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the entity"},"description":{"type":"string","maxLength":256,"description":"Description of the entity"},"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Entity definition","additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false}},"channels":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the channel"},"description":{"type":"string","maxLength":256,"description":"Description of the channel"},"messages":{"type":"object","additionalProperties":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Message definition","additionalProperties":false}}},"required":["messages"],"additionalProperties":false}},"nameTemplate":{"type":"object","properties":{"script":{"type":"string","maxLength":2000},"language":{"type":"string","maxLength":200}},"required":["script","language"],"description":"Template string optionaly used at build time by integrations implementing this interface to pick a name for actions and events.","additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the interface. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the interface. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the interface. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the interface. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"Indicates if the interface is public. Public interfaces are available to all and cannot be updated without creating a new version."}},"required":["id","createdAt","updatedAt","name","version","entities","events","actions","channels","title","description","iconUrl","readmeUrl","public"],"additionalProperties":false},"Plugin":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Plugin](#schema_plugin)"},"name":{"type":"string","maxLength":200,"description":"Name of the [Plugin](#schema_plugin)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Plugin](#schema_plugin)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Plugin](#schema_plugin) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Plugin](#schema_plugin) in ISO 8601 format"},"configuration":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the configuration"},"description":{"type":"string","maxLength":256,"description":"Description of the configuration"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["schema"],"description":"Configuration definition","additionalProperties":false},"states":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["conversation","user","bot","task"],"description":"Type of the [State](#schema_state) (`conversation`, `user`, `bot` or `task`)"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the [State](#schema_state) in the `JSON schema` format. This `JSON schema` is going to be used for validating the state data."},"expiry":{"type":"number","minimum":1,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["type","schema"],"additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false}},"dependencies":{"type":"object","properties":{"interfaces":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36},"name":{"type":"string","maxLength":200},"version":{"type":"string","maxLength":200}},"required":["id","name","version"],"additionalProperties":false}},"integrations":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36},"name":{"type":"string","maxLength":200},"version":{"type":"string","maxLength":200}},"required":["id","name","version"],"additionalProperties":false}}},"required":["interfaces","integrations"],"additionalProperties":false},"user":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"User object configuration","additionalProperties":false},"conversation":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Conversation object configuration","additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the plugin. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the plugin. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the plugin. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the plugin. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"Indicates if the plugin is public. Public plugins are available to all and cannot be updated without creating a new version."}},"required":["id","name","version","createdAt","updatedAt","configuration","states","events","actions","dependencies","user","conversation","title","description","iconUrl","readmeUrl","public"],"additionalProperties":false},"Workspace":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"ownerId":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"botCount":{"type":"number"},"billingVersion":{"type":"string","enum":["v1","v2","v3"]},"plan":{"type":"string","enum":["community","team","enterprise","plus"]},"blocked":{"type":"boolean"},"spendingLimit":{"type":"number"},"about":{"default":"","type":"string"},"profilePicture":{"default":"","type":"string"},"contactEmail":{"default":"","type":"string"},"website":{"default":"","type":"string"},"socialAccounts":{"default":[],"type":"array","items":{"type":"string"}},"isPublic":{"type":"boolean"},"handle":{"type":"string"},"activeTrialId":{"type":"string","nullable":true}},"required":["id","name","ownerId","createdAt","updatedAt","botCount","billingVersion","plan","blocked","spendingLimit","activeTrialId"],"additionalProperties":false},"WorkspaceMember":{"type":"object","properties":{"id":{"type":"string"},"userId":{"type":"string","format":"uuid"},"email":{"type":"string"},"createdAt":{"type":"string"},"role":{"type":"string","enum":["viewer","billing","developer","manager","administrator","owner"]},"profilePicture":{"type":"string"},"displayName":{"type":"string","maxLength":100}},"required":["id","email","createdAt","role"],"additionalProperties":false},"Account":{"type":"object","properties":{"id":{"type":"string"},"email":{"type":"string"},"displayName":{"type":"string","maxLength":100},"emailVerified":{"type":"boolean"},"profilePicture":{"type":"string"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Account](#schema_account) in ISO 8601 format"}},"required":["id","email","emailVerified","createdAt"],"additionalProperties":false},"Usage":{"type":"object","properties":{"id":{"type":"string","description":"Id of the usage that it is linked to. It can either be a workspace id or a bot id"},"period":{"type":"string","description":"Period of the quota that it is applied to"},"value":{"type":"number","description":"Value of the current usage"},"quota":{"type":"number","description":"Quota of the current usage"},"type":{"type":"string","enum":["invocation_timeout","invocation_calls","storage_count","bot_count","knowledgebase_vector_storage","workspace_ratelimit","table_row_count","workspace_member_count","integrations_owned_count","ai_spend","openai_spend","bing_search_spend","always_alive"],"description":"Usage type that can be used"}},"required":["id","period","value","quota","type"],"additionalProperties":false},"Issue":{"type":"object","properties":{"id":{"type":"string"},"code":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastSeenAt":{"type":"string","format":"date-time"},"title":{"type":"string"},"description":{"type":"string"},"groupedData":{"type":"object","additionalProperties":{"type":"object","properties":{"raw":{"type":"string"},"pretty":{"type":"string"}},"required":["raw"],"additionalProperties":false}},"eventsCount":{"type":"number"},"category":{"type":"string","enum":["user_code","limits","configuration","other"]},"resolutionLink":{"type":"string","nullable":true}},"required":["id","code","createdAt","lastSeenAt","title","description","groupedData","eventsCount","category","resolutionLink"],"additionalProperties":false},"IssueEvent":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"data":{"type":"object","additionalProperties":{"type":"object","properties":{"raw":{"type":"string"},"pretty":{"type":"string"}},"required":["raw"],"additionalProperties":false}}},"required":["id","createdAt","data"],"additionalProperties":false},"Activity":{"type":"object","properties":{"id":{"type":"string"},"description":{"type":"string"},"taskId":{"type":"string"},"category":{"type":"string","enum":["unknown","capture","bot_message","user_message","agent_message","event","action","task_status","subtask_status","exception"]},"data":{"type":"object","additionalProperties":true},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the activity in ISO 8601 format"}},"required":["id","description","taskId","category","data","createdAt"],"additionalProperties":false},"Version":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"}},"required":["id","name"],"additionalProperties":false},"User":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [User](#schema_user)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [User](#schema_user) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [User](#schema_user) in ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [User](#schema_user). The set of [Tags](/docs/developers/concepts/tags) available on a [User](#schema_user) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"name":{"type":"string","maxLength":200,"description":"Name of the [User](#schema_user)"},"pictureUrl":{"type":"string","maxLength":40000,"description":"Picture URL of the [User](#schema_user)"}},"required":["id","createdAt","updatedAt","tags"],"description":"The user object represents someone interacting with the bot within a specific integration. The same person interacting with a bot in slack and messenger will be represented with two different users.","additionalProperties":false},"Conversation":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Conversation](#schema_conversation)"},"currentTaskId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the current [Task](#schema_task)"},"currentWorkflowId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the current [Workflow](#schema_workflow)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Conversation](#schema_conversation) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Conversation](#schema_conversation) in ISO 8601 format"},"channel":{"type":"string","description":"Name of the channel where the [Conversation](#schema_conversation) is happening"},"integration":{"type":"string","description":"Name of the integration that created the [Conversation](#schema_conversation)"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Conversation](#schema_conversation). The set of [Tags](/docs/developers/concepts/tags) available on a [Conversation](#schema_conversation) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."}},"required":["id","createdAt","updatedAt","channel","integration","tags"],"description":"The [Conversation](#schema_conversation) object represents an exchange of messages between one or more users. A [Conversation](#schema_conversation) is always linked to an integration's channels. For example, a Slack channel represents a conversation.","additionalProperties":false},"Event":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Event](#schema_event)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Event](#schema_event) in ISO 8601 format"},"type":{"type":"string","maxLength":200,"description":"Type of the [Event](#schema_event)."},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the event defined by the integration installed on your bot or one of the default events created by our api."},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation) to link the event to."},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user) to link the event to."},"messageId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Message](#schema_message) to link the event to."},"status":{"type":"string","enum":["pending","processed","ignored","failed","scheduled"]},"failureReason":{"type":"string","maxLength":2000,"nullable":true,"description":"Reason why the event failed to be processed"}},"required":["id","createdAt","type","payload","status","failureReason"],"description":"The event object represents an action or an occurrence.","additionalProperties":false},"Message":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Message](#schema_message)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Message](#schema_message) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Update date of the [Message](#schema_message) in ISO 8601 format"},"type":{"type":"string","maxLength":200,"description":"Type of the [Message](#schema_message) represents the resource type that the message is related to"},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"},"direction":{"type":"string","enum":["incoming","outgoing"],"description":"Direction of the message (`incoming` or `outgoing`)."},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation)"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Conversation](#schema_conversation). The set of [Tags](/docs/developers/concepts/tags) available on a [Conversation](#schema_conversation) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"origin":{"type":"string","enum":["synthetic"],"description":"Origin of the message (`synthetic`)."}},"required":["id","createdAt","updatedAt","type","payload","direction","userId","conversationId","tags"],"description":"The Message object represents a message in a [Conversation](#schema_conversation) for a specific [User](#schema_user).","additionalProperties":false},"State":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [State](#schema_state)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [State](#schema_state) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [State](#schema_state) in ISO 8601 format"},"botId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Bot](#schema_bot)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Conversation](#schema_conversation)"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [User](#schema_user)"},"name":{"type":"string","maxLength":200,"description":"Name of the [State](#schema_state) which is declared inside the bot definition"},"type":{"type":"string","enum":["conversation","user","bot","task","integration","workflow"],"description":"Type of the [State](#schema_state) represents the resource type (`conversation`, `user`, `bot`, `task`, `integration` or `workflow`) that the state is related to"},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the state defined by your bot."}},"required":["id","createdAt","updatedAt","botId","name","type","payload"],"description":"The state object represents the current payload. A state is always linked to either a bot, a conversation or a user.","additionalProperties":false},"Task":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Task](#schema_task)"},"title":{"type":"string","maxLength":64,"description":"Title describing the task"},"description":{"type":"string","maxLength":256,"description":"All the notes related to the execution of the current task"},"type":{"type":"string","description":"Type of the task"},"data":{"type":"object","additionalProperties":true,"description":"Content related to the task"},"status":{"type":"string","enum":["pending","in_progress","failed","completed","blocked","paused","timeout","cancelled"],"description":"Status of the task"},"parentTaskId":{"type":"string","minLength":28,"maxLength":36,"description":"Parent task id is the parent task that created this task"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"Conversation id related to this task"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"Specific user related to this task"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the task should be failed in the ISO 8601 format"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the task in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the task in ISO 8601 format"},"failureReason":{"type":"string","maxLength":2000,"description":"If the task fails this is the reason behind it"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Task](#schema_task). Individual keys can be unset by posting an empty value to them."}},"required":["id","title","description","type","data","status","timeoutAt","createdAt","updatedAt","tags"],"description":"Task definition","additionalProperties":false},"Workflow":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Workflow](#schema_workflow)"},"name":{"type":"string","maxLength":200,"description":"Name of the workflow"},"status":{"type":"string","enum":["pending","in_progress","failed","completed","listening","paused","timedout","cancelled"],"description":"Status of the [Workflow](#schema_workflow)"},"input":{"type":"object","additionalProperties":true,"description":"Input provided to the [Workflow](#schema_workflow)"},"output":{"type":"object","additionalProperties":true,"description":"Data returned by the [Workflow](#schema_workflow) output"},"parentWorkflowId":{"type":"string","minLength":28,"maxLength":36,"description":"Parent [Workflow](#schema_workflow) id is the parent [Workflow](#schema_workflow) that created this [Workflow](#schema_workflow)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"Conversation id related to this [Workflow](#schema_workflow)"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"User id related to this [Workflow](#schema_workflow)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Workflow](#schema_workflow) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Workflow](#schema_workflow) in ISO 8601 format"},"completedAt":{"type":"string","format":"date-time","description":"The date when the [Workflow](#schema_workflow) completed in ISO 8601 format"},"failureReason":{"type":"string","maxLength":2000,"description":"If the [Workflow](#schema_workflow) fails this is the reason behind it"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date when the [Workflow](#schema_workflow) will fail in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Workflow](#schema_workflow). Individual keys can be unset by posting an empty value to them."}},"required":["id","name","status","input","output","createdAt","updatedAt","timeoutAt","tags"],"description":"Workflow definition","additionalProperties":false},"Table":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the table"},"name":{"description":"Required. This name is used to identify your table.","type":"string","minLength":1},"factor":{"default":1,"type":"number","minimum":1,"maximum":30,"description":"The 'factor' multiplies the row's data storage limit by 4KB and its quota count, but can only be set at table creation and not modified later. For instance, a factor of 2 increases storage to 8KB but counts as 2 rows in your quota. The default factor is 1."},"frozen":{"type":"boolean","description":"A table designated as \"frozen\" is immutable in terms of its name and schema structure; modifications to its schema or a renaming operation are not permitted. The only action that can be taken on such a table is deletion. The schema established at the time of creation is locked in as the final structure. To implement any changes, the table must be duplicated with the desired alterations."},"schema":{"type":"object","properties":{"$schema":{"type":"string"},"properties":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["string","number","boolean","object","array","null"]},"format":{"type":"string","enum":["date-time"]},"description":{"type":"string"},"pattern":{"type":"string","description":"String properties must match this pattern"},"enum":{"type":"array","items":{"type":"string"},"description":"String properties must be one of these values"},"items":{"type":"object","properties":{"type":{"type":"string","enum":["string","number","boolean","object","array","null"]}},"required":["type"],"additionalProperties":true,"description":"Defines the shape of items in an array"},"nullable":{"default":true,"type":"boolean"},"properties":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["string","number","boolean","object","array","null"]}},"required":["type"],"additionalProperties":true}},"x-zui":{"type":"object","properties":{"index":{"type":"integer"},"id":{"type":"string","description":"[deprecated] ID of the column."},"searchable":{"type":"boolean","description":"Indicates if the column is vectorized and searchable."},"hidden":{"type":"boolean","description":"Indicates if the field is hidden in the UI"},"order":{"type":"number","description":"Order of the column in the UI"},"width":{"type":"number","description":"Width of the column in the UI"},"schemaId":{"type":"string","description":"ID of the schema"},"computed":{"type":"object","properties":{"action":{"type":"string","enum":["ai","code","workflow"]},"dependencies":{"default":[],"type":"array","items":{"type":"string"}},"prompt":{"type":"string","description":"Prompt when action is \"ai\""},"code":{"type":"string","description":"Code to execute when action is \"code\""},"model":{"default":"gpt-4o","type":"string","maxLength":80,"description":"Model to use when action is \"ai\""},"workflowId":{"type":"string","maxLength":20,"description":"ID of Workflow to execute when action is \"workflow\""},"enabled":{"type":"boolean"}},"required":["action"],"additionalProperties":false},"typings":{"type":"string","description":"TypeScript typings for the column. Recommended if the type is \"object\", ex: \"\\{ foo: string; bar: number \\}\""}},"required":["index"],"additionalProperties":false}},"required":["type","x-zui"],"additionalProperties":false},"description":"List of keys/columns in the table."},"additionalProperties":{"type":"boolean","enum":[true],"description":"Additional properties can be provided, but they will be ignored if no column matches."},"required":{"type":"array","items":{"type":"string"},"description":"Array of required properties."},"type":{"type":"string","enum":["object"]}},"required":["properties","additionalProperties","type"],"additionalProperties":false},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Optional tags to help organize your tables. These should be passed here as an object representing key/value pairs."},"isComputeEnabled":{"type":"boolean","description":"Indicates if the table is enabled for computation."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp of table creation."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp of the last table update."}},"required":["id","name","schema"],"additionalProperties":false},"Column":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the column."},"name":{"type":"string","minLength":1,"maxLength":30,"description":"Name of the column, must be within length limits."},"description":{"type":"string","description":"Optional descriptive text about the column."},"searchable":{"type":"boolean","description":"Indicates if the column is vectorized and searchable."},"type":{"type":"string","enum":["string","number","boolean","date","object"],"description":"Specifies the data type of the column. Use \"object\" for complex data structures."},"typings":{"type":"string","description":"TypeScript typings for the column. Recommended if the type is \"object\", ex: \"\\{ foo: string; bar: number \\}\""},"computed":{"type":"object","properties":{"action":{"type":"string","enum":["ai","code","workflow"]},"dependencies":{"default":[],"type":"array","items":{"type":"string"}},"prompt":{"type":"string","description":"Prompt when action is \"ai\""},"code":{"type":"string","description":"Code to execute when action is \"code\""},"model":{"default":"gpt-4o","type":"string","maxLength":80,"description":"Model to use when action is \"ai\""},"workflowId":{"type":"string","maxLength":20,"description":"ID of Workflow to execute when action is \"workflow\""},"enabled":{"type":"boolean"}},"required":["action"],"additionalProperties":false},"schema":{"type":"object","additionalProperties":true}},"required":["name","type"],"additionalProperties":false},"Row":{"type":"object","properties":{"id":{"type":"number","description":"Unique identifier for the row."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp of row creation."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp of the last row update."},"computed":{"type":"object","additionalProperties":{"type":"object","properties":{"status":{"type":"string"},"error":{"type":"string"},"updatedBy":{"type":"string"},"updatedAt":{"type":"string"}},"required":["status"],"additionalProperties":false}},"stale":{"type":"array","items":{"type":"string"},"description":"[Read-only] List of stale values that are waiting to be recomputed."},"similarity":{"type":"number","description":"Optional numeric value indicating similarity, when using findTableRows."}},"required":["id","computed"],"additionalProperties":true},"File":{"type":"object","properties":{"id":{"type":"string","description":"File ID"},"botId":{"type":"string","description":"The ID of the bot the file belongs to"},"key":{"type":"string","description":"Unique key for the file. Must be unique across the bot (and the integration, when applicable)."},"url":{"type":"string","description":"URL to retrieve the file content. This URL will be ready to use once the file is uploaded.\n\nIf the file has a `public_content` policy, this will contain the permanent public URL to retrieve the file, otherwise this will contain a temporary pre-signed URL to download the file which should be used shortly after retrieving and should not be stored long-term as the URL will expire after a short timeframe."},"size":{"type":"number","description":"File size in bytes. Non-null if file upload status is \"COMPLETE\".","nullable":true},"contentType":{"type":"string","description":"MIME type of the file's content"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":1000},"description":"The tags of the file as an object of key/value pairs"},"metadata":{"type":"object","additionalProperties":{"nullable":true},"description":"Metadata of the file as an object of key/value pairs. The values can be of any type."},"createdAt":{"type":"string","description":"File creation timestamp in ISO 8601 format"},"updatedAt":{"type":"string","description":"File last update timestamp in ISO 8601 format"},"accessPolicies":{"type":"array","items":{"type":"string","enum":["integrations","public_content"]},"description":"Access policies configured for the file."},"index":{"type":"boolean","description":"Whether the file was requested to be indexed for search or not."},"status":{"type":"string","enum":["upload_pending","upload_failed","upload_completed","indexing_pending","indexing_failed","indexing_completed"],"description":"Status of the file. If the status is `upload_pending`, the file content has not been uploaded yet. The status will be set to `upload_completed` once the file content has been uploaded successfully.\n\nIf the upload failed for any reason (e.g. exceeding the storage quota or the maximum file size limit) the status will be set to `upload_failed` and the reason for the failure will be available in the `failedStatusReason` field of the file.\n\nHowever, if the file has been uploaded and the `index` attribute was set to `true` on the file, the status will immediately transition to the `indexing_pending` status (the `upload_completed` status step will be skipped).\n\nOnce the indexing is completed and the file is ready to be used for searching its status will be set to `indexing_completed`. If the indexing failed the status will be set to `indexing_failed` and the reason for the failure will be available in the `failedStatusReason` field."},"failedStatusReason":{"type":"string","description":"If the file status is `upload_failed` or `indexing_failed` this will contain the reason of the failure."},"expiresAt":{"type":"string","description":"File expiry timestamp in ISO 8601 format"},"owner":{"type":"object","properties":{"type":{"type":"string","enum":["bot","integration","user"]},"id":{"type":"string","description":"This field is present if `type` is \"user\" or \"bot\". If `type` is \"user\", this is the user ID. If `type` is \"bot\", this is the bot ID."},"name":{"type":"string","description":"This field is present if the `type` is \"integration\". If `type` is \"integration\", this is the integration name."}},"required":["type"],"additionalProperties":false},"indexingStack":{"type":"string","enum":["v1","v2"],"description":"Indicates the indexing stack used to index this file. Present only when file has been successfully indexed. A value of \"v2\" denotes the latest stack, \"v1\" denotes the legacy stack."}},"required":["id","botId","key","url","size","contentType","tags","metadata","createdAt","updatedAt","accessPolicies","index","status","owner"],"additionalProperties":false}},"responses":{"createConversationResponse":{"description":"Returns a [Conversation](#schema_conversation) object if creation succeeds. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"createConversationResponse","additionalProperties":false}}}},"getConversationResponse":{"description":"Returns a [Conversation](#schema_conversation) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"getConversationResponse","additionalProperties":false}}}},"listConversationsResponse":{"description":"Returns a list of [Conversation](#schema_conversation) objects","content":{"application/json":{"schema":{"type":"object","properties":{"conversations":{"type":"array","items":{"$ref":"#/components/schemas/Conversation"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["conversations","meta"],"title":"listConversationsResponse","additionalProperties":false}}}},"getOrCreateConversationResponse":{"description":"Returns a [Conversation](#schema_conversation) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"getOrCreateConversationResponse","additionalProperties":false}}}},"updateConversationResponse":{"description":"Returns an updated [Conversation](#schema_conversation) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"updateConversationResponse","additionalProperties":false}}}},"deleteConversationResponse":{"description":"Returns the [Conversation](#schema_conversation) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteConversationResponse","additionalProperties":false}}}},"listParticipantsResponse":{"description":"Returns a list of [Participant](#schema_participant) objects","content":{"application/json":{"schema":{"type":"object","properties":{"participants":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["participants","meta"],"title":"listParticipantsResponse","additionalProperties":false}}}},"addParticipantResponse":{"description":"Returns the [Participant](#schema_participant) object","content":{"application/json":{"schema":{"type":"object","properties":{"participant":{"$ref":"#/components/schemas/User"}},"required":["participant"],"title":"addParticipantResponse","additionalProperties":false}}}},"getParticipantResponse":{"description":"Returns the [Participant](#schema_participant) object","content":{"application/json":{"schema":{"type":"object","properties":{"participant":{"$ref":"#/components/schemas/User"}},"required":["participant"],"title":"getParticipantResponse","additionalProperties":false}}}},"removeParticipantResponse":{"description":"Returns an empty object","content":{"application/json":{"schema":{"type":"object","title":"removeParticipantResponse","additionalProperties":false}}}},"createEventResponse":{"description":"Returns a [Event](#schema_event) object if creation succeeds. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"event":{"$ref":"#/components/schemas/Event"}},"required":["event"],"title":"createEventResponse","additionalProperties":false}}}},"getEventResponse":{"description":"Returns the [Event](#schema_event) object if a valid identifiers were provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"event":{"$ref":"#/components/schemas/Event"}},"required":["event"],"title":"getEventResponse","additionalProperties":false}}}},"listEventsResponse":{"description":"Returns a list of [Event](#schema_event) objects","content":{"application/json":{"schema":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/Event"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["events","meta"],"title":"listEventsResponse","additionalProperties":false}}}},"createMessageResponse":{"description":"Returns a [Message](#schema_message) object if creation succeeds.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"createMessageResponse","additionalProperties":false}}}},"getOrCreateMessageResponse":{"description":"Returns a [Message](#schema_message) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"getOrCreateMessageResponse","additionalProperties":false}}}},"getMessageResponse":{"description":"Returns a [Message](#schema_message) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"getMessageResponse","additionalProperties":false}}}},"updateMessageResponse":{"description":"Message information","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"updateMessageResponse","additionalProperties":false}}}},"listMessagesResponse":{"description":"Returns a list of [Message](#schema_message) objects.","content":{"application/json":{"schema":{"type":"object","properties":{"messages":{"type":"array","items":{"$ref":"#/components/schemas/Message"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["messages","meta"],"title":"listMessagesResponse","additionalProperties":false}}}},"deleteMessageResponse":{"description":"Returns the [Message](#schema_message) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteMessageResponse","additionalProperties":false}}}},"createUserResponse":{"description":"Returns a [User](#schema_user) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"createUserResponse","additionalProperties":false}}}},"getUserResponse":{"description":"Returns a [User](#schema_user) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"getUserResponse","additionalProperties":false}}}},"listUsersResponse":{"description":"Returns a list of [User](#schema_user) objects","content":{"application/json":{"schema":{"type":"object","properties":{"users":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["users","meta"],"title":"listUsersResponse","additionalProperties":false}}}},"getOrCreateUserResponse":{"description":"Returns a [User](#schema_user) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"getOrCreateUserResponse","additionalProperties":false}}}},"updateUserResponse":{"description":"Returns an updated [User](#schema_user) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"updateUserResponse","additionalProperties":false}}}},"deleteUserResponse":{"description":"Returns the [User](#schema_user) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteUserResponse","additionalProperties":false}}}},"setStateExpiryResponse":{"description":"Returns the updated [State](#schema_state) object if a valid identifier was provided. Returns an [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"}},"required":["state"],"title":"setStateExpiryResponse","additionalProperties":false}}}},"getStateResponse":{"description":"Returns the [State](#schema_state) object if a valid identifiers were provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"},"meta":{"type":"object","properties":{"cached":{"type":"boolean"}},"required":["cached"],"additionalProperties":false}},"required":["state","meta"],"title":"getStateResponse","additionalProperties":false}}}},"setStateResponse":{"description":"Returns the updated [State](#schema_state) object if a valid identifier was provided. Returns an [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"}},"required":["state"],"title":"setStateResponse","additionalProperties":false}}}},"getOrSetStateResponse":{"description":"Returns the [State](#schema_state) object if a valid identifiers were provided. Returns [an error](#errors) otherwise.","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"},"meta":{"type":"object","properties":{"cached":{"type":"boolean"}},"required":["cached"],"additionalProperties":false}},"required":["state","meta"],"title":"getOrSetStateResponse","additionalProperties":false}}}},"patchStateResponse":{"description":"Returns the updated [State](#schema_state) object if a valid identifier was provided. Returns an [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"}},"required":["state"],"title":"patchStateResponse","additionalProperties":false}}}},"callActionResponse":{"description":"Action payload","content":{"application/json":{"schema":{"type":"object","properties":{"output":{"type":"object","additionalProperties":true,"description":"Input of the action"},"meta":{"type":"object","properties":{"cached":{"type":"boolean"}},"required":["cached"],"additionalProperties":false}},"required":["output","meta"],"title":"callActionResponse","additionalProperties":false}}}},"configureIntegrationResponse":{"description":"Configuration of the integration","content":{"application/json":{"schema":{"type":"object","title":"configureIntegrationResponse","additionalProperties":false}}}},"getTaskResponse":{"description":"Returns a [Task](#schema_task) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"task":{"$ref":"#/components/schemas/Task"}},"required":["task"],"title":"getTaskResponse","additionalProperties":false}}}},"createTaskResponse":{"description":"Returns a [Task](#schema_task) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"task":{"$ref":"#/components/schemas/Task"}},"required":["task"],"title":"createTaskResponse","additionalProperties":false}}}},"updateTaskResponse":{"description":"Returns an updated [Task](#schema_task) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"task":{"$ref":"#/components/schemas/Task"}},"required":["task"],"title":"updateTaskResponse","additionalProperties":false}}}},"deleteTaskResponse":{"description":"Returns the [Task](#schema_task) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteTaskResponse","additionalProperties":false}}}},"listTasksResponse":{"description":"Returns a list of [Task](#schema_task) objects","content":{"application/json":{"schema":{"type":"object","properties":{"tasks":{"type":"array","items":{"$ref":"#/components/schemas/Task"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["tasks","meta"],"title":"listTasksResponse","additionalProperties":false}}}},"createWorkflowResponse":{"description":"Returns a [Workflow](#schema_workflow) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"createWorkflowResponse","additionalProperties":false}}}},"getWorkflowResponse":{"description":"Returns a [Workflow](#schema_workflow) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"getWorkflowResponse","additionalProperties":false}}}},"updateWorkflowResponse":{"description":"Returns an updated [Workflow](#schema_workflow) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"updateWorkflowResponse","additionalProperties":false}}}},"deleteWorkflowResponse":{"description":"Returns the [Workflow](#schema_workflow) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteWorkflowResponse","additionalProperties":false}}}},"listWorkflowsResponse":{"description":"Returns a list of [Workflow](#schema_workflow) objects","content":{"application/json":{"schema":{"type":"object","properties":{"workflows":{"type":"array","items":{"$ref":"#/components/schemas/Workflow"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["workflows","meta"],"title":"listWorkflowsResponse","additionalProperties":false}}}},"getOrCreateWorkflowResponse":{"description":"Returns a [Workflow](#schema_workflow) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"getOrCreateWorkflowResponse","additionalProperties":false}}}},"listTagValuesResponse":{"description":"Empty response","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string"}},"required":["value"]}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["tags","meta"],"title":"listTagValuesResponse","additionalProperties":false}}}},"trackAnalyticsResponse":{"description":"Success","content":{"application/json":{"schema":{"type":"object","title":"trackAnalyticsResponse","additionalProperties":false}}}}},"requestBodies":{"createConversationBody":{"description":"Conversation data","content":{"application/json":{"schema":{"type":"object","properties":{"channel":{"type":"string","maxLength":200,"description":"Channel name"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Conversation](#schema_conversation)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a conversation from within a bot, call an action of the integration instead.","deprecated":true}},"required":["channel","tags"],"title":"createConversationBody","additionalProperties":false}}}},"getOrCreateConversationBody":{"description":"Conversation data","content":{"application/json":{"schema":{"type":"object","properties":{"channel":{"type":"string","maxLength":200,"description":"Channel name"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Conversation](#schema_conversation)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a conversation from within a bot, call an action of the integration instead.","deprecated":true},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing conversations. If provided, all specified tags must match exactly for a conversation to be considered a match. For example, with an existing conversation whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."}},"required":["channel","tags"],"title":"getOrCreateConversationBody","additionalProperties":false}}}},"updateConversationBody":{"description":"Conversation data","content":{"application/json":{"schema":{"type":"object","properties":{"currentTaskId":{"type":"string"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Tags for the [Conversation](#schema_conversation)"}},"title":"updateConversationBody","additionalProperties":false}}}},"addParticipantBody":{"description":"Participant data","content":{"application/json":{"schema":{"type":"object","properties":{"userId":{"type":"string","minLength":28,"maxLength":36,"description":"User id"}},"required":["userId"],"title":"addParticipantBody","additionalProperties":false}}}},"createEventBody":{"description":"Event data","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","maxLength":200,"description":"Type of the [Event](#schema_event)."},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the event defined by the integration installed on your bot or one of the default events created by our API."},"schedule":{"type":"object","properties":{"dateTime":{"type":"string","maxLength":28,"minLength":24,"description":"When the [Event](#schema_event) will be sent, in the ISO 8601 format"},"delay":{"type":"number","description":"Delay in milliseconds before sending the [Event](#schema_event)"}},"description":"Schedule the Event to be sent at a specific time. Either dateTime or delay must be provided.","additionalProperties":false},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation) to link the event to."},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user) to link the event to."},"workflowId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Workflow](#schema_workflow) to link the event to."},"messageId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Message](#schema_message) to link the event to."}},"required":["type","payload"],"title":"createEventBody","additionalProperties":false}}}},"createMessageBody":{"description":"Message data","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation)"},"type":{"type":"string","maxLength":200,"description":"Type of the [Message](#schema_message) represents the resource type that the message is related to"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Message](#schema_message). The set of [Tags](/docs/developers/concepts/tags) available on a [Message](#schema_message) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"schedule":{"type":"object","properties":{"dateTime":{"type":"string","maxLength":28,"minLength":24,"description":"When the [Message](#schema_message) will be sent, in the ISO 8601 format"},"delay":{"type":"number","description":"Delay in milliseconds before sending the [Message](#schema_message)"}},"description":"Schedule the Message to be sent at a specific time. Either dateTime or delay must be provided.","additionalProperties":false},"origin":{"type":"string","enum":["synthetic"]}},"required":["payload","userId","conversationId","type","tags"],"title":"createMessageBody","additionalProperties":false}}}},"getOrCreateMessageBody":{"description":"Message data","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation)"},"type":{"type":"string","maxLength":200,"description":"Type of the [Message](#schema_message) represents the resource type that the message is related to"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Message](#schema_message). The set of [Tags](/docs/developers/concepts/tags) available on a [Message](#schema_message) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"schedule":{"type":"object","properties":{"dateTime":{"type":"string","maxLength":28,"minLength":24,"description":"When the [Message](#schema_message) will be sent, in the ISO 8601 format"},"delay":{"type":"number","description":"Delay in milliseconds before sending the [Message](#schema_message)"}},"description":"Schedule the Message to be sent at a specific time. Either dateTime or delay must be provided.","additionalProperties":false},"origin":{"type":"string","enum":["synthetic"]},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing messages. If provided, all specified tags must match exactly for a message to be considered a match. For example, with an existing message whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."}},"required":["payload","userId","conversationId","type","tags"],"title":"getOrCreateMessageBody","additionalProperties":false}}}},"updateMessageBody":{"description":"Message data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Conversation](#schema_conversation). The set of [Tags](/docs/developers/concepts/tags) available on a [Conversation](#schema_conversation) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"}},"required":["tags"],"title":"updateMessageBody","additionalProperties":false}}}},"createUserBody":{"description":"User data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [User](#schema_user)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a [User](#schema_user) from within a bot, call an action of the integration instead.","deprecated":true},"name":{"type":"string","maxLength":200,"description":"Name of the user"},"pictureUrl":{"type":"string","maxLength":40000,"description":"URI of the user picture"}},"required":["tags"],"title":"createUserBody","additionalProperties":false}}}},"getOrCreateUserBody":{"description":"User data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [User](#schema_user)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a [User](#schema_user) from within a bot, call an action of the integration instead.","deprecated":true},"name":{"type":"string","maxLength":200,"description":"Name of the user"},"pictureUrl":{"type":"string","maxLength":40000,"description":"URI of the user picture"},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing users. If provided, all specified tags must match exactly for a user to be considered a match. For example, with an existing user whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."}},"required":["tags"],"title":"getOrCreateUserBody","additionalProperties":false}}}},"updateUserBody":{"description":"User data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [User](#schema_user)"},"name":{"type":"string","maxLength":200,"nullable":true,"description":"Name of the user"},"pictureUrl":{"type":"string","maxLength":40000,"nullable":true,"description":"URI of the user picture"}},"title":"updateUserBody","additionalProperties":false}}}},"setStateExpiryBody":{"description":"State expiry","content":{"application/json":{"schema":{"type":"object","properties":{"expiry":{"type":"number","minimum":1,"maximum":2592000000,"nullable":true,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["expiry"],"title":"setStateExpiryBody","additionalProperties":false}}}},"setStateBody":{"description":"State content","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"nullable":true,"description":"Payload is the content of the state defined by your bot."},"expiry":{"type":"number","minimum":1,"maximum":2592000000,"nullable":true,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["payload"],"title":"setStateBody","additionalProperties":false}}}},"getOrSetStateBody":{"description":"State content","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the state defined by your bot."},"expiry":{"type":"number","minimum":1,"maximum":2592000000,"nullable":true,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["payload"],"title":"getOrSetStateBody","additionalProperties":false}}}},"patchStateBody":{"description":"State content","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the state defined by your bot."}},"required":["payload"],"title":"patchStateBody","additionalProperties":false}}}},"callActionBody":{"description":"Action payload","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","maxLength":200,"description":"Type of the action"},"input":{"type":"object","additionalProperties":true,"description":"Input of the action"}},"required":["type","input"],"title":"callActionBody","additionalProperties":false}}}},"configureIntegrationBody":{"description":"Configuration of the integration","content":{"application/json":{"schema":{"type":"object","properties":{"identifier":{"type":"string","maxLength":200,"nullable":true,"description":"Unique identifier of the integration that was installed on the bot"},"scheduleRegisterCall":{"type":"string","enum":["hourly","daily","weekly","bi-weekly","monthly","bi-monthly","quarterly","yearly"],"description":"Recurring schedule on which `register()` will be called on the integration"},"sandboxIdentifiers":{"type":"object","nullable":true,"description":"**EXPERIMENTAL** Sandbox identifiers for the integration. Setting this to null will remove all sandbox identifiers. This is an experimental feature meant to be used by specific integrations.","additionalProperties":false}},"title":"configureIntegrationBody","additionalProperties":false}}}},"createTaskBody":{"description":"Task data","content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","maxLength":2000,"description":"Title describing the task"},"description":{"type":"string","maxLength":20000,"description":"All the notes related to the execution of the current task"},"type":{"type":"string","maxLength":200,"description":"Type of the task"},"data":{"type":"object","additionalProperties":true,"description":"Content related to the task"},"parentTaskId":{"type":"string","description":"Parent task id is the parent task that created this task"},"conversationId":{"type":"string","description":"Conversation id related to this task"},"userId":{"type":"string","description":"Specific user related to this task"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the task should be failed in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Task](#schema_task)"}},"required":["type","conversationId"],"title":"createTaskBody","additionalProperties":false}}}},"updateTaskBody":{"description":"Task data","content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","description":"Title describing the task"},"description":{"type":"string","description":"All the notes related to the execution of the current task"},"data":{"type":"object","additionalProperties":true,"description":"Content related to the task"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the task should be failed in the ISO 8601 format"},"status":{"type":"string","enum":["pending","in_progress","failed","completed","blocked","paused","timeout","cancelled"],"description":"Status of the task"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Task](#schema_task)"}},"title":"updateTaskBody","additionalProperties":false}}}},"createWorkflowBody":{"description":"Workflow data","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Name of the workflow"},"input":{"type":"object","additionalProperties":true,"description":"Content related to the workflow"},"parentWorkflowId":{"type":"string","description":"Parent workflow id is the parent workflow that created this workflow"},"conversationId":{"type":"string","description":"Conversation id related to this workflow"},"userId":{"type":"string","description":"Specific user related to this workflow"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the workflow should be failed in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Workflow](#schema_workflow)"},"status":{"type":"string","enum":["pending","in_progress","listening"]},"eventId":{"type":"string","description":"Event id must be specified if the workflow is created with the status in_progress"}},"required":["name","status"],"title":"createWorkflowBody","additionalProperties":false}}}},"updateWorkflowBody":{"description":"Workflow data","content":{"application/json":{"schema":{"type":"object","properties":{"output":{"type":"object","additionalProperties":true,"description":"Content related to the workflow"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the workflow should be failed in the ISO 8601 format"},"status":{"type":"string","enum":["completed","cancelled","listening","paused","failed","in_progress"],"description":"Status of the workflow"},"failureReason":{"type":"string","description":"Reason why the workflow failed"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Workflow](#schema_workflow)"},"userId":{"type":"string","description":"Specific user related to this workflow"},"eventId":{"type":"string","description":"Event id must be specified if the workflow is updated with the status in_progress"}},"title":"updateWorkflowBody","additionalProperties":false}}}},"getOrCreateWorkflowBody":{"description":"Workflow data","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Name of the workflow"},"input":{"type":"object","additionalProperties":true,"description":"Content related to the workflow"},"parentWorkflowId":{"type":"string","description":"Parent workflow id is the parent workflow that created this workflow"},"conversationId":{"type":"string","description":"Conversation id related to this workflow"},"userId":{"type":"string","description":"Specific user related to this workflow"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the workflow should be failed in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Workflow](#schema_workflow)"},"status":{"type":"string","enum":["pending","in_progress","listening"]},"eventId":{"type":"string","description":"Event id must be specified if the workflow is created with the status in_progress"},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing workflows. If provided, all specified tags must match exactly for a workflow to be considered a match. For example, with an existing workflow whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."}},"required":["name","status"],"title":"getOrCreateWorkflowBody","additionalProperties":false}}}},"trackAnalyticsBody":{"description":"Add an event to the analytics","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"count":{"type":"integer","minimum":1}},"required":["name","count"],"title":"trackAnalyticsBody","additionalProperties":false}}}}},"parameters":{}}}
|
|
1
|
+
{"openapi":"3.0.0","servers":[{"url":"https://api.botpress.cloud"}],"info":{"title":"Botpress API","description":"API for Botpress Cloud","version":"1.46.0"},"paths":{"/v1/chat/conversations":{"post":{"operationId":"createConversation","description":"Creates a new [Conversation](#schema_conversation). When creating a new [Conversation](#schema_conversation), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createConversationResponse"},"default":{"$ref":"#/components/responses/createConversationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createConversationBody"}},"get":{"operationId":"listConversations","description":"Retrieves a list of [Conversation](#schema_conversation) you’ve previously created. The conversations are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](#tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"sortField","in":"query","description":"Sort results by this field","schema":{"type":"string","enum":["createdAt","updatedAt"]}},{"name":"sortDirection","in":"query","description":"Sort results in this direction","schema":{"type":"string","enum":["asc","desc"]}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}},{"name":"participantIds","in":"query","description":"Filter by participant ids","schema":{"type":"array","items":{"type":"string"}}},{"name":"integrationName","in":"query","description":"Filter by integration name","schema":{"type":"string"}},{"name":"channel","in":"query","description":"Filter by integration channel name","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listConversationsResponse"},"default":{"$ref":"#/components/responses/listConversationsResponse"}}}},"/v1/chat/conversations/{id}":{"get":{"operationId":"getConversation","description":"Retrieves the [Conversation](#schema_conversation) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getConversationResponse"},"default":{"$ref":"#/components/responses/getConversationResponse"}}},"put":{"operationId":"updateConversation","description":"Update a [Conversation](#schema_conversation) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateConversationResponse"},"default":{"$ref":"#/components/responses/updateConversationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateConversationBody"}},"delete":{"operationId":"deleteConversation","description":"Permanently deletes a [Conversation](#schema_conversation). It cannot be undone. Also immediately deletes corresponding [Messages](#schema_message).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteConversationResponse"},"default":{"$ref":"#/components/responses/deleteConversationResponse"}}}},"/v1/chat/conversations/get-or-create":{"post":{"operationId":"getOrCreateConversation","description":"Retrieves the [Conversation](#schema_conversation) object for a valid identifier. If the conversation does not exist, it will be created.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateConversationResponse"},"default":{"$ref":"#/components/responses/getOrCreateConversationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateConversationBody"}}},"/v1/chat/conversations/{id}/participants":{"get":{"operationId":"listParticipants","description":"Retrieves a list of [Participant](#schema_participant) for a given [Conversation](#schema_conversation).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listParticipantsResponse"},"default":{"$ref":"#/components/responses/listParticipantsResponse"}}},"post":{"operationId":"addParticipant","description":"Add a [Participant](#schema_participant) to a [Conversation](#schema_conversation).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/addParticipantResponse"},"default":{"$ref":"#/components/responses/addParticipantResponse"}},"requestBody":{"$ref":"#/components/requestBodies/addParticipantBody"}}},"/v1/chat/conversations/{id}/participants/{userId}":{"get":{"operationId":"getParticipant","description":"Retrieves a [Participant](#schema_participant) from a [Conversation](#schema_conversation).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"User id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getParticipantResponse"},"default":{"$ref":"#/components/responses/getParticipantResponse"}}},"delete":{"operationId":"removeParticipant","description":"Remove a [Participant](#schema_participant) from a [Conversation](#schema_conversation).","parameters":[{"name":"id","in":"path","description":"Conversation id","required":true,"schema":{"type":"string"}},{"name":"userId","in":"path","description":"User id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/removeParticipantResponse"},"default":{"$ref":"#/components/responses/removeParticipantResponse"}}}},"/v1/chat/events":{"post":{"operationId":"createEvent","description":"Creates a new [Event](#schema_event). When creating a new [Event](#schema_event), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createEventResponse"},"default":{"$ref":"#/components/responses/createEventResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createEventBody"}},"get":{"operationId":"listEvents","description":"Retrieves a list of [Event](#schema_event) you’ve previously created. The events are returned in sorted order, with the most recent appearing first.","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"type","in":"query","description":"Filter by event type","schema":{"type":"string"}},{"name":"conversationId","in":"query","description":"Filter by conversation id","schema":{"type":"string"}},{"name":"userId","in":"query","description":"Filter by user id","schema":{"type":"string"}},{"name":"messageId","in":"query","description":"Filter by message id","schema":{"type":"string"}},{"name":"workflowId","in":"query","description":"Filter by workflow id","schema":{"type":"string"}},{"name":"status","in":"query","description":"Filter by status. Allowed values: pending, ignored, processed, failed.","schema":{"type":"string","enum":["pending","ignored","processed","failed","scheduled"]}}],"responses":{"200":{"$ref":"#/components/responses/listEventsResponse"},"default":{"$ref":"#/components/responses/listEventsResponse"}}}},"/v1/chat/events/{id}":{"get":{"operationId":"getEvent","description":"Retrieves the [Event](#schema_event) object for a valid identifiers.","parameters":[{"name":"id","in":"path","description":"Event id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getEventResponse"},"default":{"$ref":"#/components/responses/getEventResponse"}}}},"/v1/chat/messages":{"post":{"operationId":"createMessage","description":"Creates a new [Message](#schema_message). When creating a new [Message](#schema_message), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createMessageResponse"},"default":{"$ref":"#/components/responses/createMessageResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createMessageBody"}},"get":{"operationId":"listMessages","description":"Retrieves a list of [Message](#schema_message) you’ve previously created. The messages are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"conversationId","in":"query","description":"Conversation id","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}}],"responses":{"200":{"$ref":"#/components/responses/listMessagesResponse"},"default":{"$ref":"#/components/responses/listMessagesResponse"}}}},"/v1/chat/messages/get-or-create":{"post":{"operationId":"getOrCreateMessage","description":"Retrieves the [Message](#schema_message) object for a valid identifier. If the message does not exist, it will be created.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateMessageResponse"},"default":{"$ref":"#/components/responses/getOrCreateMessageResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateMessageBody"}}},"/v1/chat/messages/{id}":{"get":{"operationId":"getMessage","description":"Retrieves the [Message](#schema_message) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Id of the Message","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getMessageResponse"},"default":{"$ref":"#/components/responses/getMessageResponse"}}},"put":{"operationId":"updateMessage","description":"Updates a message tags and payload. The message type cannot be changed. Calling this operation from an integration, to update an incoming message, will not invoke the bot. The other way around it also true; Calling this operation from the bot, to update an outgoing message, will not invoke the integration.","parameters":[{"name":"id","in":"path","description":"Message id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateMessageResponse"},"default":{"$ref":"#/components/responses/updateMessageResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateMessageBody"}},"delete":{"operationId":"deleteMessage","description":"Permanently deletes a [Message](#schema_message). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"Message id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteMessageResponse"},"default":{"$ref":"#/components/responses/deleteMessageResponse"}}}},"/v1/chat/users":{"post":{"operationId":"createUser","description":"Creates a new [User](#schema_user). When creating a new [User](#schema_user), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createUserResponse"},"default":{"$ref":"#/components/responses/createUserResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createUserBody"}},"get":{"operationId":"listUsers","description":"Retrieves a list of [User](#schema_user) previously created. The users are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"conversationId","in":"query","description":"Filter by conversation id. This will return all users that have participated in the conversation.","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}}],"responses":{"200":{"$ref":"#/components/responses/listUsersResponse"},"default":{"$ref":"#/components/responses/listUsersResponse"}}}},"/v1/chat/users/{id}":{"get":{"operationId":"getUser","description":"Retrieves the [User](#schema_user) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"User ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getUserResponse"},"default":{"$ref":"#/components/responses/getUserResponse"}}},"put":{"operationId":"updateUser","description":"Update a [User](#schema_user) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"User ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateUserResponse"},"default":{"$ref":"#/components/responses/updateUserResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateUserBody"}},"delete":{"operationId":"deleteUser","description":"Permanently deletes a [User](#schema_user). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"User ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteUserResponse"},"default":{"$ref":"#/components/responses/deleteUserResponse"}}}},"/v1/chat/users/get-or-create":{"post":{"operationId":"getOrCreateUser","description":"Retrieves the [User](#schema_user) object for a valid identifier. If the user does not exist, it will be created.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateUserResponse"},"default":{"$ref":"#/components/responses/getOrCreateUserResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateUserBody"}}},"/v1/chat/states/{type}/{id}/{name}/expiry":{"post":{"operationId":"setStateExpiry","description":"Updates the [State](#schema_state) expiry.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/setStateExpiryResponse"},"default":{"$ref":"#/components/responses/setStateExpiryResponse"}},"requestBody":{"$ref":"#/components/requestBodies/setStateExpiryBody"}}},"/v1/chat/states/{type}/{id}/{name}":{"get":{"operationId":"getState","description":"Retrieves the [State](#schema_state) object for a valid identifiers.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getStateResponse"},"default":{"$ref":"#/components/responses/getStateResponse"}}},"post":{"operationId":"setState","description":"Overrides the [State](#schema_state) object by setting the values of the parameters passed.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/setStateResponse"},"default":{"$ref":"#/components/responses/setStateResponse"}},"requestBody":{"$ref":"#/components/requestBodies/setStateBody"}},"patch":{"operationId":"patchState","description":"Updates the [State](#schema_state) object by setting the values of the parameters passed.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/patchStateResponse"},"default":{"$ref":"#/components/responses/patchStateResponse"}},"requestBody":{"$ref":"#/components/requestBodies/patchStateBody"}}},"/v1/chat/states/{type}/{id}/{name}/get-or-set":{"post":{"operationId":"getOrSetState","description":"Retrieves the [State](#schema_state) object for a valid identifiers. If the state does not exist, it creates a new state.","parameters":[{"name":"type","in":"path","description":"State type","required":true,"schema":{"type":"string","enum":["conversation","user","bot","integration","task","workflow"]}},{"name":"id","in":"path","description":"State id","required":true,"schema":{"type":"string"}},{"name":"name","in":"path","description":"State name","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getOrSetStateResponse"},"default":{"$ref":"#/components/responses/getOrSetStateResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrSetStateBody"}}},"/v1/chat/actions":{"post":{"operationId":"callAction","description":"Call an action","parameters":[],"responses":{"200":{"$ref":"#/components/responses/callActionResponse"},"default":{"$ref":"#/components/responses/callActionResponse"}},"requestBody":{"$ref":"#/components/requestBodies/callActionBody"}}},"/v1/chat/integrations/configure":{"post":{"operationId":"configureIntegration","description":"An integration can call this endpoint to configure itself","parameters":[],"responses":{"200":{"$ref":"#/components/responses/configureIntegrationResponse"},"default":{"$ref":"#/components/responses/configureIntegrationResponse"}},"requestBody":{"$ref":"#/components/requestBodies/configureIntegrationBody"}}},"/v1/chat/tasks/{id}":{"get":{"operationId":"getTask","description":"Retrieves the [Task](#schema_task) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Task id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getTaskResponse"},"default":{"$ref":"#/components/responses/getTaskResponse"}}},"put":{"operationId":"updateTask","description":"Update a [Task](#schema_task) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"Task id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateTaskResponse"},"default":{"$ref":"#/components/responses/updateTaskResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateTaskBody"}},"delete":{"operationId":"deleteTask","description":"Permanently deletes a [Task](#schema_task). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"Task id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteTaskResponse"},"default":{"$ref":"#/components/responses/deleteTaskResponse"}}}},"/v1/chat/tasks":{"post":{"operationId":"createTask","description":"Creates a new [Task](#schema_task). When creating a new [Task](#schema_task), the required tags must be provided. See the specific integration for more details.","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createTaskResponse"},"default":{"$ref":"#/components/responses/createTaskResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createTaskBody"}},"get":{"operationId":"listTasks","description":"Retrieves a list of [Task](#schema_task) you've previously created. The tasks are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}},{"name":"conversationId","in":"query","description":"Conversation id","schema":{"type":"string"}},{"name":"userId","in":"query","description":"User id","schema":{"type":"string"}},{"name":"parentTaskId","in":"query","description":"Parent task id","schema":{"type":"string"}},{"name":"status","in":"query","description":"Status","schema":{"type":"array","items":{"type":"string","enum":["pending","in_progress","failed","completed","blocked","paused","timeout","cancelled"]}}},{"name":"type","in":"query","description":"Type","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listTasksResponse"},"default":{"$ref":"#/components/responses/listTasksResponse"}}}},"/v1/chat/workflows":{"post":{"operationId":"createWorkflow","description":"Creates a new [Workflow](#schema_workflow).","parameters":[],"responses":{"201":{"$ref":"#/components/responses/createWorkflowResponse"},"default":{"$ref":"#/components/responses/createWorkflowResponse"}},"requestBody":{"$ref":"#/components/requestBodies/createWorkflowBody"}},"get":{"operationId":"listWorkflows","description":"Retrieves a list of [Workflow](#schema_workflow) you've previously created. The workflows are returned in sorted order, with the most recent appearing first. The list can be filtered using [Tags](/docs/developers/concepts/tags).","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"tags","in":"query","description":"Filter by tags","schema":{"type":"object","additionalProperties":{"type":"string"}}},{"name":"conversationId","in":"query","description":"Conversation id","schema":{"type":"string"}},{"name":"userId","in":"query","description":"User id","schema":{"type":"string"}},{"name":"parentWorkflowId","in":"query","description":"Parent workflow id","schema":{"type":"string"}},{"name":"statuses","in":"query","description":"Status","schema":{"type":"array","items":{"type":"string","enum":["pending","in_progress","failed","completed","listening","paused","timedout","cancelled"]}}},{"name":"name","in":"query","description":"Workflow name","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/listWorkflowsResponse"},"default":{"$ref":"#/components/responses/listWorkflowsResponse"}}}},"/v1/chat/workflows/{id}":{"get":{"operationId":"getWorkflow","description":"Retrieves the [Workflow](#schema_workflow) object for a valid identifier.","parameters":[{"name":"id","in":"path","description":"Workflow id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/getWorkflowResponse"},"default":{"$ref":"#/components/responses/getWorkflowResponse"}}},"put":{"operationId":"updateWorkflow","description":"Update a [Workflow](#schema_workflow) object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.","parameters":[{"name":"id","in":"path","description":"Workflow id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/updateWorkflowResponse"},"default":{"$ref":"#/components/responses/updateWorkflowResponse"}},"requestBody":{"$ref":"#/components/requestBodies/updateWorkflowBody"}},"delete":{"operationId":"deleteWorkflow","description":"Permanently deletes a [Workflow](#schema_workflow). It cannot be undone.","parameters":[{"name":"id","in":"path","description":"Workflow id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/deleteWorkflowResponse"},"default":{"$ref":"#/components/responses/deleteWorkflowResponse"}}}},"/v1/chat/workflows/get-or-create":{"post":{"operationId":"getOrCreateWorkflow","description":"Get a workflow by tags or creates a new [Workflow](#schema_workflow) if it doesn't exists.","parameters":[],"responses":{"200":{"$ref":"#/components/responses/getOrCreateWorkflowResponse"},"default":{"$ref":"#/components/responses/getOrCreateWorkflowResponse"}},"requestBody":{"$ref":"#/components/requestBodies/getOrCreateWorkflowBody"}}},"/v1/chat/tags/{key}/values":{"get":{"operationId":"listTagValues","description":"Get a bot tag values","parameters":[{"name":"nextToken","in":"query","description":"Provide the `meta.nextToken` value provided in the last API response to retrieve the next page of results","schema":{"type":"string"}},{"name":"key","in":"path","description":"Tag key","required":true,"schema":{"type":"string"}},{"name":"type","in":"query","description":"Tag type","required":true,"schema":{"type":"string","enum":["user","conversation","message"]}}],"responses":{"200":{"$ref":"#/components/responses/listTagValuesResponse"},"default":{"$ref":"#/components/responses/listTagValuesResponse"}}}},"/v1/chat/analytics":{"post":{"operationId":"trackAnalytics","description":"Add an event to the analytics","parameters":[],"responses":{"200":{"$ref":"#/components/responses/trackAnalyticsResponse"},"default":{"$ref":"#/components/responses/trackAnalyticsResponse"}},"requestBody":{"$ref":"#/components/requestBodies/trackAnalyticsBody"}}}},"components":{"schemas":{"Bot":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Bot](#schema_bot)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Bot](#schema_bot) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Bot](#schema_bot) in ISO 8601 format"},"signingSecret":{"type":"string","maxLength":2000,"description":"Signing secret of the [Bot](#schema_bot)"},"integrations":{"type":"object","additionalProperties":{"type":"object","properties":{"enabled":{"type":"boolean"},"name":{"type":"string","maxLength":200,"description":"Name of the [Integration](#schema_integration)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Integration](#schema_integration)"},"webhookUrl":{"type":"string","maxLength":2000},"webhookId":{"type":"string","maxLength":200},"identifier":{"type":"string","maxLength":2000},"configurationType":{"type":"string","maxLength":200,"nullable":true},"configuration":{"type":"object","additionalProperties":true},"status":{"type":"string","enum":["registration_pending","registered","registration_failed","unregistration_pending","unregistered","unregistration_failed"]},"statusReason":{"type":"string","maxLength":2000,"nullable":true},"disabledChannels":{"type":"array","items":{"type":"string","description":"Channel name"},"description":"Disabled channels for this integration"},"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Integration](#schema_integration)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Integration](#schema_integration) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Integration](#schema_integration) in ISO 8601 format"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the integration. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the integration. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the integration. This is the icon that will be displayed in the UI"},"public":{"type":"boolean","description":"[DEPRECATED] Indicates whether the integration is public. Please use the \"visibility\" parameter instead.","deprecated":true},"visibility":{"type":"string","enum":["public","private","unlisted"],"description":"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."},"verificationStatus":{"type":"string","enum":["unapproved","pending","approved","rejected"],"description":"Status of the integration version verification"}},"required":["enabled","name","version","webhookUrl","webhookId","configurationType","configuration","status","statusReason","disabledChannels","id","createdAt","updatedAt","title","description","iconUrl","public","visibility","verificationStatus"],"additionalProperties":false},"description":"A mapping of integrations to their configuration. If the `x-multiple-integrations` header is present, this object is keyed by integration aliases. Otherwise, this object is keyed by integration ids."},"plugins":{"type":"object","additionalProperties":{"type":"object","properties":{"enabled":{"type":"boolean"},"name":{"type":"string","maxLength":200,"description":"Name of the [Plugin](#schema_plugin)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Plugin](#schema_plugin)"},"configuration":{"type":"object","additionalProperties":true},"interfaces":{"type":"object","additionalProperties":{"type":"object","properties":{"integrationId":{"type":"string","minLength":28,"maxLength":36},"integrationAlias":{"type":"string","maxLength":200},"integrationInterfaceAlias":{"type":"string","maxLength":200},"interfaceId":{"type":"string","minLength":28,"maxLength":36}},"required":["integrationId","integrationAlias","interfaceId"],"additionalProperties":false},"description":"A mapping of plugin interface aliases to their backing integrations"},"integrations":{"type":"object","additionalProperties":{"type":"object","properties":{"integrationId":{"type":"string","minLength":28,"maxLength":36},"integrationAlias":{"type":"string","maxLength":200}},"required":["integrationId","integrationAlias"],"additionalProperties":false},"description":"A mapping of plugin integration aliases to their backing integrations"},"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Plugin](#schema_plugin)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Plugin](#schema_plugin) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Plugin](#schema_plugin) in ISO 8601 format"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the plugin. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the plugin. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the plugin. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the plugin. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"Indicates if the plugin is public. Public plugins are available to all and cannot be updated without creating a new version."}},"required":["enabled","name","version","configuration","id","createdAt","updatedAt","title","description","iconUrl","readmeUrl","public"],"additionalProperties":false},"description":"A mapping of plugin aliases to their configuration"},"maxExecutionTime":{"type":"number","description":"Maximum execution time of the bot (in seconds)."},"user":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"User object configuration","additionalProperties":false},"conversation":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Conversation object configuration","additionalProperties":false},"message":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Message object configuration","additionalProperties":false},"states":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["conversation","user","bot","task"],"description":"Type of the [State](#schema_state) (`conversation`, `user`, `bot` or `task`)"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the [State](#schema_state) in the `JSON schema` format. This `JSON schema` is going to be used for validating the state data."},"expiry":{"type":"number","minimum":1,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["type","schema"],"additionalProperties":false},"description":"A mapping of states to their definition"},"configuration":{"type":"object","properties":{"data":{"type":"object","additionalProperties":true,"description":"Configuration data"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["data","schema"],"description":"Configuration of the bot","additionalProperties":false},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false},"description":"Events definition"},"recurringEvents":{"type":"object","additionalProperties":{"type":"object","properties":{"schedule":{"type":"object","properties":{"cron":{"type":"string","maxLength":200}},"required":["cron"],"additionalProperties":false},"type":{"type":"string","maxLength":200},"payload":{"type":"object","additionalProperties":true},"failedAttempts":{"type":"number","description":"The number of times the recurring event failed to run. This counter resets once the recurring event runs successfully."},"lastFailureReason":{"type":"string","maxLength":2000,"description":"The reason why the recurring event failed to run in the last attempt.","nullable":true}},"required":["schedule","type","payload","failedAttempts","lastFailureReason"],"additionalProperties":false},"description":"Recurring events"},"subscriptions":{"type":"object","properties":{"events":{"type":"object","additionalProperties":{"type":"object","additionalProperties":false},"nullable":true,"description":"Events that the bot is currently subscribed on (ex: \"slack:reactionAdded\"). If null, the bot is subscribed to all events."}},"required":["events"],"description":"Subscriptions of the bot","additionalProperties":false},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false},"description":"Actions definition"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Tags of [Bot](#schema_bot)"},"name":{"type":"string","description":"Name of the [Bot](#schema_bot)"},"deployedAt":{"type":"string","format":"date-time","description":"Last deployment date of the [Bot](#schema_bot) in the ISO 8601 format"},"dev":{"type":"boolean","description":"Indicates if the [Bot](#schema_bot) is a development bot; Development bots run locally and can install dev integrations"},"createdBy":{"type":"string","description":"Id of the user that created the bot"},"alwaysAlive":{"type":"boolean","description":"Indicates if the [Bot](#schema_bot) should be in always alive mode"},"status":{"type":"string","enum":["active","deploying"],"description":"Status of the bot"},"medias":{"type":"array","items":{"type":"object","properties":{"url":{"type":"string","description":"URL of the media file"},"name":{"type":"string","description":"Name of the media file"}},"required":["url","name"]},"description":"Media files associated with the [Bot](#schema_bot)"}},"required":["id","createdAt","updatedAt","signingSecret","integrations","plugins","user","conversation","message","states","configuration","events","recurringEvents","subscriptions","actions","tags","name","dev","alwaysAlive","status","medias"],"additionalProperties":false},"Integration":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Integration](#schema_integration)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Integration](#schema_integration) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Integration](#schema_integration) in ISO 8601 format"},"identifier":{"type":"object","properties":{"fallbackHandlerScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to handle incoming requests for a request that doesn't have an identifier"},"extractScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to extract the identifier from an incoming webhook often use for OAuth"}},"description":"Global identifier configuration of the [Integration](#schema_integration)","additionalProperties":false},"sandbox":{"type":"object","properties":{"identifierExtractScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to extract the identifier from an incoming webhook used specifically for the sandbox"},"messageExtractScript":{"type":"string","maxLength":2000,"description":"VRL Script of the [Integration](#schema_integration) to extract the message from an incoming webhook used specifically for the sandbox"}},"additionalProperties":false},"maxExecutionTime":{"type":"number","description":"Maximum execution time of the integration (in seconds)."},"url":{"type":"string","maxLength":2000,"description":"URL of the [Integration](#schema_integration)"},"name":{"type":"string","maxLength":200,"description":"Name of the [Integration](#schema_integration)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Integration](#schema_integration)"},"interfaces":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the interface"},"name":{"type":"string","maxLength":200,"description":"Name of the interface"},"version":{"type":"string","maxLength":200,"description":"Version of the interface"},"entities":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}},"channels":{"type":"object","additionalProperties":{"type":"object","properties":{"name":{"type":"string","maxLength":200}},"required":["name"],"additionalProperties":false}}},"required":["id","name","version","entities","actions","events","channels"],"additionalProperties":false}},"configuration":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the configuration"},"description":{"type":"string","maxLength":256,"description":"Description of the configuration"},"identifier":{"type":"object","properties":{"linkTemplateScript":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["required"],"description":"Identifier configuration of the [Integration](#schema_integration)","additionalProperties":false},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["identifier","schema"],"description":"Configuration definition","additionalProperties":false},"configurations":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the configuration"},"description":{"type":"string","maxLength":256,"description":"Description of the configuration"},"identifier":{"type":"object","properties":{"linkTemplateScript":{"type":"string","maxLength":2000},"required":{"type":"boolean"}},"required":["required"],"description":"Identifier configuration of the [Integration](#schema_integration)","additionalProperties":false},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["identifier","schema"],"description":"Configuration definition","additionalProperties":false}},"channels":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the channel"},"description":{"type":"string","maxLength":256,"description":"Description of the channel"},"messages":{"type":"object","additionalProperties":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Message definition","additionalProperties":false}},"conversation":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}},"creation":{"type":"object","properties":{"enabled":{"type":"boolean","description":"Enable conversation creation"},"requiredTags":{"type":"array","items":{"type":"string"},"description":"The list of tags that are required to be specified when calling the API directly to create a conversation."}},"required":["enabled","requiredTags"],"description":"The conversation creation setting determines how to create a conversation through the API directly. The integration will have to implement the `createConversation` functionality to support this setting.","additionalProperties":false}},"required":["tags","creation"],"description":"Conversation object configuration","additionalProperties":false},"message":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Message object configuration","additionalProperties":false}},"required":["messages","conversation","message"],"description":"Channel definition","additionalProperties":false}},"states":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["conversation","user","integration"],"description":"Type of the [State](#schema_state) (`conversation`, `user` or `integration`)"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the [State](#schema_state) in the `JSON schema` format. This `JSON schema` is going to be used for validating the state data."}},"required":["type","schema"],"description":"State definition","additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false}},"user":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}},"creation":{"type":"object","properties":{"enabled":{"type":"boolean","description":"Enable user creation"},"requiredTags":{"type":"array","items":{"type":"string"},"description":"The list of tags that are required to be specified when calling the API directly to create a user."}},"required":["enabled","requiredTags"],"description":"The user creation setting determines how to create a user through the API directly. The integration will have to implement the `createUser` functionality to support this setting.","additionalProperties":false}},"required":["tags","creation"],"description":"User object configuration","additionalProperties":false},"entities":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the entity"},"description":{"type":"string","maxLength":256,"description":"Description of the entity"},"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Entity definition","additionalProperties":false}},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"},"dev":{"type":"boolean","description":"Indicates if the integration is a development integration; Dev integrations run locally"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the integration. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the integration. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the integration. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the integration. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"[DEPRECATED] Indicates whether the integration is public. Please use the \"visibility\" parameter instead.","deprecated":true},"visibility":{"type":"string","enum":["public","private","unlisted"],"description":"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."},"verificationStatus":{"type":"string","enum":["unapproved","pending","approved","rejected"],"description":"Status of the integration version verification"},"secrets":{"type":"array","items":{"type":"string"},"description":"Secrets 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."}},"required":["id","createdAt","updatedAt","identifier","url","name","version","interfaces","configuration","configurations","channels","states","events","actions","user","entities","dev","title","description","iconUrl","readmeUrl","public","visibility","verificationStatus","secrets"],"additionalProperties":false},"Interface":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Interface](#schema_interface)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Interface](#schema_interface) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Interface](#schema_interface) in ISO 8601 format"},"name":{"type":"string","maxLength":200,"description":"Name of the [Interface](#schema_interface)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Interface](#schema_interface)"},"entities":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the entity"},"description":{"type":"string","maxLength":256,"description":"Description of the entity"},"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Entity definition","additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false}},"channels":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the channel"},"description":{"type":"string","maxLength":256,"description":"Description of the channel"},"messages":{"type":"object","additionalProperties":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"description":"Message definition","additionalProperties":false}}},"required":["messages"],"additionalProperties":false}},"nameTemplate":{"type":"object","properties":{"script":{"type":"string","maxLength":2000},"language":{"type":"string","maxLength":200}},"required":["script","language"],"description":"Template string optionaly used at build time by integrations implementing this interface to pick a name for actions and events.","additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the interface. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the interface. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the interface. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the interface. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"Indicates if the interface is public. Public interfaces are available to all and cannot be updated without creating a new version."}},"required":["id","createdAt","updatedAt","name","version","entities","events","actions","channels","title","description","iconUrl","readmeUrl","public"],"additionalProperties":false},"Plugin":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Plugin](#schema_plugin)"},"name":{"type":"string","maxLength":200,"description":"Name of the [Plugin](#schema_plugin)"},"version":{"type":"string","maxLength":200,"description":"Version of the [Plugin](#schema_plugin)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Plugin](#schema_plugin) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Plugin](#schema_plugin) in ISO 8601 format"},"configuration":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the configuration"},"description":{"type":"string","maxLength":256,"description":"Description of the configuration"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the configuration in the `JSON schema` format. The configuration data is validated against this `JSON schema`."}},"required":["schema"],"description":"Configuration definition","additionalProperties":false},"states":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["conversation","user","bot","task"],"description":"Type of the [State](#schema_state) (`conversation`, `user`, `bot` or `task`)"},"schema":{"type":"object","additionalProperties":true,"description":"Schema of the [State](#schema_state) in the `JSON schema` format. This `JSON schema` is going to be used for validating the state data."},"expiry":{"type":"number","minimum":1,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["type","schema"],"additionalProperties":false}},"events":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the event"},"description":{"type":"string","maxLength":256,"description":"Description of the event"},"schema":{"type":"object","additionalProperties":true},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["schema"],"description":"Event Definition","additionalProperties":false}},"actions":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the action"},"description":{"type":"string","maxLength":256,"description":"Description of the action"},"billable":{"type":"boolean"},"cacheable":{"type":"boolean"},"input":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"output":{"type":"object","properties":{"schema":{"type":"object","additionalProperties":true}},"required":["schema"],"additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"}},"required":["input","output"],"description":"Action definition","additionalProperties":false}},"dependencies":{"type":"object","properties":{"interfaces":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36},"name":{"type":"string","maxLength":200},"version":{"type":"string","maxLength":200}},"required":["id","name","version"],"additionalProperties":false}},"integrations":{"type":"object","additionalProperties":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36},"name":{"type":"string","maxLength":200},"version":{"type":"string","maxLength":200}},"required":["id","name","version"],"additionalProperties":false}}},"required":["interfaces","integrations"],"additionalProperties":false},"user":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"User object configuration","additionalProperties":false},"conversation":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":64,"description":"Title of the tag"},"description":{"type":"string","maxLength":256,"description":"Description of the tag"}},"description":"Definition of a tag that can be provided on the object","additionalProperties":false}}},"required":["tags"],"description":"Conversation object configuration","additionalProperties":false},"attributes":{"type":"object","additionalProperties":{"type":"string","maxLength":200},"description":"Optional attributes"},"title":{"type":"string","minLength":1,"maxLength":64,"description":"Title of the plugin. This is the name that will be displayed in the UI"},"description":{"type":"string","maxLength":256,"description":"Description of the plugin. This is the description that will be displayed in the UI"},"iconUrl":{"type":"string","description":"URL of the icon of the plugin. This is the icon that will be displayed in the UI"},"readmeUrl":{"type":"string","description":"URL of the readme of the plugin. This is the readme that will be displayed in the UI"},"public":{"type":"boolean","description":"Indicates if the plugin is public. Public plugins are available to all and cannot be updated without creating a new version."}},"required":["id","name","version","createdAt","updatedAt","configuration","states","events","actions","dependencies","user","conversation","title","description","iconUrl","readmeUrl","public"],"additionalProperties":false},"Workspace":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"ownerId":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"botCount":{"type":"number"},"billingVersion":{"type":"string","enum":["v1","v2","v3"]},"plan":{"type":"string","enum":["community","team","enterprise","plus"]},"blocked":{"type":"boolean"},"spendingLimit":{"type":"number"},"about":{"default":"","type":"string"},"profilePicture":{"default":"","type":"string"},"contactEmail":{"default":"","type":"string"},"website":{"default":"","type":"string"},"socialAccounts":{"default":[],"type":"array","items":{"type":"string"}},"isPublic":{"type":"boolean"},"handle":{"type":"string"},"activeTrialId":{"type":"string","nullable":true}},"required":["id","name","ownerId","createdAt","updatedAt","botCount","billingVersion","plan","blocked","spendingLimit","activeTrialId"],"additionalProperties":false},"WorkspaceMember":{"type":"object","properties":{"id":{"type":"string"},"userId":{"type":"string","format":"uuid"},"email":{"type":"string"},"createdAt":{"type":"string"},"role":{"type":"string","enum":["viewer","billing","developer","manager","administrator","owner"]},"profilePicture":{"type":"string"},"displayName":{"type":"string","maxLength":100}},"required":["id","email","createdAt","role"],"additionalProperties":false},"Account":{"type":"object","properties":{"id":{"type":"string"},"email":{"type":"string"},"displayName":{"type":"string","maxLength":100},"emailVerified":{"type":"boolean"},"profilePicture":{"type":"string"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Account](#schema_account) in ISO 8601 format"}},"required":["id","email","emailVerified","createdAt"],"additionalProperties":false},"Usage":{"type":"object","properties":{"id":{"type":"string","description":"Id of the usage that it is linked to. It can either be a workspace id or a bot id"},"period":{"type":"string","description":"Period of the quota that it is applied to"},"value":{"type":"number","description":"Value of the current usage"},"quota":{"type":"number","description":"Quota of the current usage"},"type":{"type":"string","enum":["invocation_timeout","invocation_calls","storage_count","bot_count","knowledgebase_vector_storage","workspace_ratelimit","table_row_count","workspace_member_count","integrations_owned_count","ai_spend","openai_spend","bing_search_spend","always_alive"],"description":"Usage type that can be used"}},"required":["id","period","value","quota","type"],"additionalProperties":false},"Issue":{"type":"object","properties":{"id":{"type":"string"},"code":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastSeenAt":{"type":"string","format":"date-time"},"title":{"type":"string"},"description":{"type":"string"},"groupedData":{"type":"object","additionalProperties":{"type":"object","properties":{"raw":{"type":"string"},"pretty":{"type":"string"}},"required":["raw"],"additionalProperties":false}},"eventsCount":{"type":"number"},"category":{"type":"string","enum":["user_code","limits","configuration","other"]},"resolutionLink":{"type":"string","nullable":true}},"required":["id","code","createdAt","lastSeenAt","title","description","groupedData","eventsCount","category","resolutionLink"],"additionalProperties":false},"IssueEvent":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"data":{"type":"object","additionalProperties":{"type":"object","properties":{"raw":{"type":"string"},"pretty":{"type":"string"}},"required":["raw"],"additionalProperties":false}}},"required":["id","createdAt","data"],"additionalProperties":false},"Activity":{"type":"object","properties":{"id":{"type":"string"},"description":{"type":"string"},"taskId":{"type":"string"},"category":{"type":"string","enum":["unknown","capture","bot_message","user_message","agent_message","event","action","task_status","subtask_status","exception"]},"data":{"type":"object","additionalProperties":true},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the activity in ISO 8601 format"}},"required":["id","description","taskId","category","data","createdAt"],"additionalProperties":false},"Version":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"}},"required":["id","name"],"additionalProperties":false},"User":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [User](#schema_user)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [User](#schema_user) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [User](#schema_user) in ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [User](#schema_user). The set of [Tags](/docs/developers/concepts/tags) available on a [User](#schema_user) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"name":{"type":"string","maxLength":200,"description":"Name of the [User](#schema_user)"},"pictureUrl":{"type":"string","maxLength":40000,"description":"Picture URL of the [User](#schema_user)"}},"required":["id","createdAt","updatedAt","tags"],"description":"The user object represents someone interacting with the bot within a specific integration. The same person interacting with a bot in slack and messenger will be represented with two different users.","additionalProperties":false},"Conversation":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Conversation](#schema_conversation)"},"currentTaskId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the current [Task](#schema_task)"},"currentWorkflowId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the current [Workflow](#schema_workflow)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Conversation](#schema_conversation) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Conversation](#schema_conversation) in ISO 8601 format"},"channel":{"type":"string","description":"Name of the channel where the [Conversation](#schema_conversation) is happening"},"integration":{"type":"string","description":"Name of the integration that created the [Conversation](#schema_conversation)"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Conversation](#schema_conversation). The set of [Tags](/docs/developers/concepts/tags) available on a [Conversation](#schema_conversation) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."}},"required":["id","createdAt","updatedAt","channel","integration","tags"],"description":"The [Conversation](#schema_conversation) object represents an exchange of messages between one or more users. A [Conversation](#schema_conversation) is always linked to an integration's channels. For example, a Slack channel represents a conversation.","additionalProperties":false},"Event":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Event](#schema_event)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Event](#schema_event) in ISO 8601 format"},"type":{"type":"string","maxLength":200,"description":"Type of the [Event](#schema_event)."},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the event defined by the integration installed on your bot or one of the default events created by our api."},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation) to link the event to."},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user) to link the event to."},"messageId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Message](#schema_message) to link the event to."},"status":{"type":"string","enum":["pending","processed","ignored","failed","scheduled"]},"failureReason":{"type":"string","maxLength":2000,"nullable":true,"description":"Reason why the event failed to be processed"}},"required":["id","createdAt","type","payload","status","failureReason"],"description":"The event object represents an action or an occurrence.","additionalProperties":false},"Message":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Message](#schema_message)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Message](#schema_message) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Update date of the [Message](#schema_message) in ISO 8601 format"},"type":{"type":"string","maxLength":200,"description":"Type of the [Message](#schema_message) represents the resource type that the message is related to"},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"},"direction":{"type":"string","enum":["incoming","outgoing"],"description":"Direction of the message (`incoming` or `outgoing`)."},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation)"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Conversation](#schema_conversation). The set of [Tags](/docs/developers/concepts/tags) available on a [Conversation](#schema_conversation) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"origin":{"type":"string","enum":["synthetic"],"description":"Origin of the message (`synthetic`)."}},"required":["id","createdAt","updatedAt","type","payload","direction","userId","conversationId","tags"],"description":"The Message object represents a message in a [Conversation](#schema_conversation) for a specific [User](#schema_user).","additionalProperties":false},"State":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [State](#schema_state)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [State](#schema_state) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [State](#schema_state) in ISO 8601 format"},"botId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Bot](#schema_bot)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Conversation](#schema_conversation)"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [User](#schema_user)"},"name":{"type":"string","maxLength":200,"description":"Name of the [State](#schema_state) which is declared inside the bot definition"},"type":{"type":"string","enum":["conversation","user","bot","task","integration","workflow"],"description":"Type of the [State](#schema_state) represents the resource type (`conversation`, `user`, `bot`, `task`, `integration` or `workflow`) that the state is related to"},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the state defined by your bot."}},"required":["id","createdAt","updatedAt","botId","name","type","payload"],"description":"The state object represents the current payload. A state is always linked to either a bot, a conversation or a user.","additionalProperties":false},"Task":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Task](#schema_task)"},"title":{"type":"string","maxLength":64,"description":"Title describing the task"},"description":{"type":"string","maxLength":256,"description":"All the notes related to the execution of the current task"},"type":{"type":"string","description":"Type of the task"},"data":{"type":"object","additionalProperties":true,"description":"Content related to the task"},"status":{"type":"string","enum":["pending","in_progress","failed","completed","blocked","paused","timeout","cancelled"],"description":"Status of the task"},"parentTaskId":{"type":"string","minLength":28,"maxLength":36,"description":"Parent task id is the parent task that created this task"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"Conversation id related to this task"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"Specific user related to this task"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the task should be failed in the ISO 8601 format"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the task in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the task in ISO 8601 format"},"failureReason":{"type":"string","maxLength":2000,"description":"If the task fails this is the reason behind it"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Task](#schema_task). Individual keys can be unset by posting an empty value to them."}},"required":["id","title","description","type","data","status","timeoutAt","createdAt","updatedAt","tags"],"description":"Task definition","additionalProperties":false},"Workflow":{"type":"object","properties":{"id":{"type":"string","minLength":28,"maxLength":36,"description":"Id of the [Workflow](#schema_workflow)"},"name":{"type":"string","maxLength":200,"description":"Name of the workflow"},"status":{"type":"string","enum":["pending","in_progress","failed","completed","listening","paused","timedout","cancelled"],"description":"Status of the [Workflow](#schema_workflow)"},"input":{"type":"object","additionalProperties":true,"description":"Input provided to the [Workflow](#schema_workflow)"},"output":{"type":"object","additionalProperties":true,"description":"Data returned by the [Workflow](#schema_workflow) output"},"parentWorkflowId":{"type":"string","minLength":28,"maxLength":36,"description":"Parent [Workflow](#schema_workflow) id is the parent [Workflow](#schema_workflow) that created this [Workflow](#schema_workflow)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"Conversation id related to this [Workflow](#schema_workflow)"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"User id related to this [Workflow](#schema_workflow)"},"createdAt":{"type":"string","format":"date-time","description":"Creation date of the [Workflow](#schema_workflow) in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Updating date of the [Workflow](#schema_workflow) in ISO 8601 format"},"completedAt":{"type":"string","format":"date-time","description":"The date when the [Workflow](#schema_workflow) completed in ISO 8601 format"},"failureReason":{"type":"string","maxLength":2000,"description":"If the [Workflow](#schema_workflow) fails this is the reason behind it"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date when the [Workflow](#schema_workflow) will fail in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Workflow](#schema_workflow). Individual keys can be unset by posting an empty value to them."}},"required":["id","name","status","input","output","createdAt","updatedAt","timeoutAt","tags"],"description":"Workflow definition","additionalProperties":false},"Table":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the table"},"name":{"description":"Required. This name is used to identify your table.","type":"string","minLength":1},"factor":{"default":1,"type":"number","minimum":1,"maximum":30,"description":"The 'factor' multiplies the row's data storage limit by 4KB and its quota count, but can only be set at table creation and not modified later. For instance, a factor of 2 increases storage to 8KB but counts as 2 rows in your quota. The default factor is 1."},"frozen":{"type":"boolean","description":"A table designated as \"frozen\" is immutable in terms of its name and schema structure; modifications to its schema or a renaming operation are not permitted. The only action that can be taken on such a table is deletion. The schema established at the time of creation is locked in as the final structure. To implement any changes, the table must be duplicated with the desired alterations."},"schema":{"type":"object","properties":{"$schema":{"type":"string"},"properties":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["string","number","boolean","object","array","null"]},"format":{"type":"string","enum":["date-time"]},"description":{"type":"string"},"pattern":{"type":"string","description":"String properties must match this pattern"},"enum":{"type":"array","items":{"type":"string"},"description":"String properties must be one of these values"},"items":{"type":"object","properties":{"type":{"type":"string","enum":["string","number","boolean","object","array","null"]}},"required":["type"],"additionalProperties":true,"description":"Defines the shape of items in an array"},"nullable":{"default":true,"type":"boolean"},"properties":{"type":"object","additionalProperties":{"type":"object","properties":{"type":{"type":"string","enum":["string","number","boolean","object","array","null"]}},"required":["type"],"additionalProperties":true}},"x-zui":{"type":"object","properties":{"index":{"type":"integer"},"id":{"type":"string","description":"[deprecated] ID of the column."},"searchable":{"type":"boolean","description":"Indicates if the column is vectorized and searchable."},"hidden":{"type":"boolean","description":"Indicates if the field is hidden in the UI"},"order":{"type":"number","description":"Order of the column in the UI"},"width":{"type":"number","description":"Width of the column in the UI"},"schemaId":{"type":"string","description":"ID of the schema"},"computed":{"type":"object","properties":{"action":{"type":"string","enum":["ai","code","workflow"]},"dependencies":{"default":[],"type":"array","items":{"type":"string"}},"prompt":{"type":"string","description":"Prompt when action is \"ai\""},"code":{"type":"string","description":"Code to execute when action is \"code\""},"model":{"default":"gpt-4o","type":"string","maxLength":80,"description":"Model to use when action is \"ai\""},"workflowId":{"type":"string","maxLength":20,"description":"ID of Workflow to execute when action is \"workflow\""},"enabled":{"type":"boolean"}},"required":["action"],"additionalProperties":false},"typings":{"type":"string","description":"TypeScript typings for the column. Recommended if the type is \"object\", ex: \"\\{ foo: string; bar: number \\}\""}},"required":["index"],"additionalProperties":false}},"required":["type","x-zui"],"additionalProperties":false},"description":"List of keys/columns in the table."},"additionalProperties":{"type":"boolean","enum":[true],"description":"Additional properties can be provided, but they will be ignored if no column matches."},"required":{"type":"array","items":{"type":"string"},"description":"Array of required properties."},"type":{"type":"string","enum":["object"]}},"required":["properties","additionalProperties","type"],"additionalProperties":false},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Optional tags to help organize your tables. These should be passed here as an object representing key/value pairs."},"isComputeEnabled":{"type":"boolean","description":"Indicates if the table is enabled for computation."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp of table creation."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp of the last table update."}},"required":["id","name","schema"],"additionalProperties":false},"Column":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the column."},"name":{"type":"string","minLength":1,"maxLength":30,"description":"Name of the column, must be within length limits."},"description":{"type":"string","description":"Optional descriptive text about the column."},"searchable":{"type":"boolean","description":"Indicates if the column is vectorized and searchable."},"type":{"type":"string","enum":["string","number","boolean","date","object"],"description":"Specifies the data type of the column. Use \"object\" for complex data structures."},"typings":{"type":"string","description":"TypeScript typings for the column. Recommended if the type is \"object\", ex: \"\\{ foo: string; bar: number \\}\""},"computed":{"type":"object","properties":{"action":{"type":"string","enum":["ai","code","workflow"]},"dependencies":{"default":[],"type":"array","items":{"type":"string"}},"prompt":{"type":"string","description":"Prompt when action is \"ai\""},"code":{"type":"string","description":"Code to execute when action is \"code\""},"model":{"default":"gpt-4o","type":"string","maxLength":80,"description":"Model to use when action is \"ai\""},"workflowId":{"type":"string","maxLength":20,"description":"ID of Workflow to execute when action is \"workflow\""},"enabled":{"type":"boolean"}},"required":["action"],"additionalProperties":false},"schema":{"type":"object","additionalProperties":true}},"required":["name","type"],"additionalProperties":false},"Row":{"type":"object","properties":{"id":{"type":"number","description":"Unique identifier for the row."},"createdAt":{"type":"string","format":"date-time","description":"Timestamp of row creation."},"updatedAt":{"type":"string","format":"date-time","description":"Timestamp of the last row update."},"computed":{"type":"object","additionalProperties":{"type":"object","properties":{"status":{"type":"string"},"error":{"type":"string"},"updatedBy":{"type":"string"},"updatedAt":{"type":"string"}},"required":["status"],"additionalProperties":false}},"stale":{"type":"array","items":{"type":"string"},"description":"[Read-only] List of stale values that are waiting to be recomputed."},"similarity":{"type":"number","description":"Optional numeric value indicating similarity, when using findTableRows."}},"required":["id","computed"],"additionalProperties":true},"File":{"type":"object","properties":{"id":{"type":"string","description":"File ID"},"botId":{"type":"string","description":"The ID of the bot the file belongs to"},"key":{"type":"string","description":"Unique key for the file. Must be unique across the bot (and the integration, when applicable)."},"url":{"type":"string","description":"URL to retrieve the file content. This URL will be ready to use once the file is uploaded.\n\nIf the file has a `public_content` policy, this will contain the permanent public URL to retrieve the file, otherwise this will contain a temporary pre-signed URL to download the file which should be used shortly after retrieving and should not be stored long-term as the URL will expire after a short timeframe."},"size":{"type":"number","description":"File size in bytes. Non-null if file upload status is \"COMPLETE\".","nullable":true},"contentType":{"type":"string","description":"MIME type of the file's content"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":1000},"description":"The tags of the file as an object of key/value pairs"},"metadata":{"type":"object","additionalProperties":{"nullable":true},"description":"Metadata of the file as an object of key/value pairs. The values can be of any type."},"createdAt":{"type":"string","description":"File creation timestamp in ISO 8601 format"},"updatedAt":{"type":"string","description":"File last update timestamp in ISO 8601 format"},"accessPolicies":{"type":"array","items":{"type":"string","enum":["integrations","public_content"]},"description":"Access policies configured for the file."},"index":{"type":"boolean","description":"Whether the file was requested to be indexed for search or not."},"status":{"type":"string","enum":["upload_pending","upload_failed","upload_completed","indexing_pending","indexing_failed","indexing_completed"],"description":"Status of the file. If the status is `upload_pending`, the file content has not been uploaded yet. The status will be set to `upload_completed` once the file content has been uploaded successfully.\n\nIf the upload failed for any reason (e.g. exceeding the storage quota or the maximum file size limit) the status will be set to `upload_failed` and the reason for the failure will be available in the `failedStatusReason` field of the file.\n\nHowever, if the file has been uploaded and the `index` attribute was set to `true` on the file, the status will immediately transition to the `indexing_pending` status (the `upload_completed` status step will be skipped).\n\nOnce the indexing is completed and the file is ready to be used for searching its status will be set to `indexing_completed`. If the indexing failed the status will be set to `indexing_failed` and the reason for the failure will be available in the `failedStatusReason` field."},"failedStatusReason":{"type":"string","description":"If the file status is `upload_failed` or `indexing_failed` this will contain the reason of the failure."},"expiresAt":{"type":"string","description":"File expiry timestamp in ISO 8601 format"},"owner":{"type":"object","properties":{"type":{"type":"string","enum":["bot","integration","user"]},"id":{"type":"string","description":"This field is present if `type` is \"user\" or \"bot\". If `type` is \"user\", this is the user ID. If `type` is \"bot\", this is the bot ID."},"name":{"type":"string","description":"This field is present if the `type` is \"integration\". If `type` is \"integration\", this is the integration name."}},"required":["type"],"additionalProperties":false},"indexingStack":{"type":"string","enum":["v1","v2"],"description":"Indicates the indexing stack used to index this file. Present only when file has been successfully indexed. A value of \"v2\" denotes the latest stack, \"v1\" denotes the legacy stack."}},"required":["id","botId","key","url","size","contentType","tags","metadata","createdAt","updatedAt","accessPolicies","index","status","owner"],"additionalProperties":false}},"responses":{"createConversationResponse":{"description":"Returns a [Conversation](#schema_conversation) object if creation succeeds. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"createConversationResponse","additionalProperties":false}}}},"getConversationResponse":{"description":"Returns a [Conversation](#schema_conversation) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"getConversationResponse","additionalProperties":false}}}},"listConversationsResponse":{"description":"Returns a list of [Conversation](#schema_conversation) objects","content":{"application/json":{"schema":{"type":"object","properties":{"conversations":{"type":"array","items":{"$ref":"#/components/schemas/Conversation"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["conversations","meta"],"title":"listConversationsResponse","additionalProperties":false}}}},"getOrCreateConversationResponse":{"description":"Returns a [Conversation](#schema_conversation) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"getOrCreateConversationResponse","additionalProperties":false}}}},"updateConversationResponse":{"description":"Returns an updated [Conversation](#schema_conversation) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"conversation":{"$ref":"#/components/schemas/Conversation"}},"required":["conversation"],"title":"updateConversationResponse","additionalProperties":false}}}},"deleteConversationResponse":{"description":"Returns the [Conversation](#schema_conversation) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteConversationResponse","additionalProperties":false}}}},"listParticipantsResponse":{"description":"Returns a list of [Participant](#schema_participant) objects","content":{"application/json":{"schema":{"type":"object","properties":{"participants":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["participants","meta"],"title":"listParticipantsResponse","additionalProperties":false}}}},"addParticipantResponse":{"description":"Returns the [Participant](#schema_participant) object","content":{"application/json":{"schema":{"type":"object","properties":{"participant":{"$ref":"#/components/schemas/User"}},"required":["participant"],"title":"addParticipantResponse","additionalProperties":false}}}},"getParticipantResponse":{"description":"Returns the [Participant](#schema_participant) object","content":{"application/json":{"schema":{"type":"object","properties":{"participant":{"$ref":"#/components/schemas/User"}},"required":["participant"],"title":"getParticipantResponse","additionalProperties":false}}}},"removeParticipantResponse":{"description":"Returns an empty object","content":{"application/json":{"schema":{"type":"object","title":"removeParticipantResponse","additionalProperties":false}}}},"createEventResponse":{"description":"Returns a [Event](#schema_event) object if creation succeeds. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"event":{"$ref":"#/components/schemas/Event"}},"required":["event"],"title":"createEventResponse","additionalProperties":false}}}},"getEventResponse":{"description":"Returns the [Event](#schema_event) object if a valid identifiers were provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"event":{"$ref":"#/components/schemas/Event"}},"required":["event"],"title":"getEventResponse","additionalProperties":false}}}},"listEventsResponse":{"description":"Returns a list of [Event](#schema_event) objects","content":{"application/json":{"schema":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/Event"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["events","meta"],"title":"listEventsResponse","additionalProperties":false}}}},"createMessageResponse":{"description":"Returns a [Message](#schema_message) object if creation succeeds.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"createMessageResponse","additionalProperties":false}}}},"getOrCreateMessageResponse":{"description":"Returns a [Message](#schema_message) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"getOrCreateMessageResponse","additionalProperties":false}}}},"getMessageResponse":{"description":"Returns a [Message](#schema_message) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"getMessageResponse","additionalProperties":false}}}},"updateMessageResponse":{"description":"Message information","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"$ref":"#/components/schemas/Message"}},"required":["message"],"title":"updateMessageResponse","additionalProperties":false}}}},"listMessagesResponse":{"description":"Returns a list of [Message](#schema_message) objects.","content":{"application/json":{"schema":{"type":"object","properties":{"messages":{"type":"array","items":{"$ref":"#/components/schemas/Message"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["messages","meta"],"title":"listMessagesResponse","additionalProperties":false}}}},"deleteMessageResponse":{"description":"Returns the [Message](#schema_message) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteMessageResponse","additionalProperties":false}}}},"createUserResponse":{"description":"Returns a [User](#schema_user) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"createUserResponse","additionalProperties":false}}}},"getUserResponse":{"description":"Returns a [User](#schema_user) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"getUserResponse","additionalProperties":false}}}},"listUsersResponse":{"description":"Returns a list of [User](#schema_user) objects","content":{"application/json":{"schema":{"type":"object","properties":{"users":{"type":"array","items":{"$ref":"#/components/schemas/User"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["users","meta"],"title":"listUsersResponse","additionalProperties":false}}}},"getOrCreateUserResponse":{"description":"Returns a [User](#schema_user) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"getOrCreateUserResponse","additionalProperties":false}}}},"updateUserResponse":{"description":"Returns an updated [User](#schema_user) object if a valid identifier was provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"user":{"$ref":"#/components/schemas/User"}},"required":["user"],"title":"updateUserResponse","additionalProperties":false}}}},"deleteUserResponse":{"description":"Returns the [User](#schema_user) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteUserResponse","additionalProperties":false}}}},"setStateExpiryResponse":{"description":"Returns the updated [State](#schema_state) object if a valid identifier was provided. Returns an [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"}},"required":["state"],"title":"setStateExpiryResponse","additionalProperties":false}}}},"getStateResponse":{"description":"Returns the [State](#schema_state) object if a valid identifiers were provided. Returns [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"},"meta":{"type":"object","properties":{"cached":{"type":"boolean"}},"required":["cached"],"additionalProperties":false}},"required":["state","meta"],"title":"getStateResponse","additionalProperties":false}}}},"setStateResponse":{"description":"Returns the updated [State](#schema_state) object if a valid identifier was provided. Returns an [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"}},"required":["state"],"title":"setStateResponse","additionalProperties":false}}}},"getOrSetStateResponse":{"description":"Returns the [State](#schema_state) object if a valid identifiers were provided. Returns [an error](#errors) otherwise.","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"},"meta":{"type":"object","properties":{"cached":{"type":"boolean"}},"required":["cached"],"additionalProperties":false}},"required":["state","meta"],"title":"getOrSetStateResponse","additionalProperties":false}}}},"patchStateResponse":{"description":"Returns the updated [State](#schema_state) object if a valid identifier was provided. Returns an [an error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"state":{"$ref":"#/components/schemas/State"}},"required":["state"],"title":"patchStateResponse","additionalProperties":false}}}},"callActionResponse":{"description":"Action payload","content":{"application/json":{"schema":{"type":"object","properties":{"output":{"type":"object","additionalProperties":true,"description":"Input of the action"},"meta":{"type":"object","properties":{"cached":{"type":"boolean"}},"required":["cached"],"additionalProperties":false}},"required":["output","meta"],"title":"callActionResponse","additionalProperties":false}}}},"configureIntegrationResponse":{"description":"Configuration of the integration","content":{"application/json":{"schema":{"type":"object","title":"configureIntegrationResponse","additionalProperties":false}}}},"getTaskResponse":{"description":"Returns a [Task](#schema_task) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"task":{"$ref":"#/components/schemas/Task"}},"required":["task"],"title":"getTaskResponse","additionalProperties":false}}}},"createTaskResponse":{"description":"Returns a [Task](#schema_task) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"task":{"$ref":"#/components/schemas/Task"}},"required":["task"],"title":"createTaskResponse","additionalProperties":false}}}},"updateTaskResponse":{"description":"Returns an updated [Task](#schema_task) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"task":{"$ref":"#/components/schemas/Task"}},"required":["task"],"title":"updateTaskResponse","additionalProperties":false}}}},"deleteTaskResponse":{"description":"Returns the [Task](#schema_task) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteTaskResponse","additionalProperties":false}}}},"listTasksResponse":{"description":"Returns a list of [Task](#schema_task) objects","content":{"application/json":{"schema":{"type":"object","properties":{"tasks":{"type":"array","items":{"$ref":"#/components/schemas/Task"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["tasks","meta"],"title":"listTasksResponse","additionalProperties":false}}}},"createWorkflowResponse":{"description":"Returns a [Workflow](#schema_workflow) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"createWorkflowResponse","additionalProperties":false}}}},"getWorkflowResponse":{"description":"Returns a [Workflow](#schema_workflow) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"getWorkflowResponse","additionalProperties":false}}}},"updateWorkflowResponse":{"description":"Returns an updated [Workflow](#schema_workflow) object if a valid identifier was provided. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"updateWorkflowResponse","additionalProperties":false}}}},"deleteWorkflowResponse":{"description":"Returns the [Workflow](#schema_workflow) object that was deleted","content":{"application/json":{"schema":{"type":"object","title":"deleteWorkflowResponse","additionalProperties":false}}}},"listWorkflowsResponse":{"description":"Returns a list of [Workflow](#schema_workflow) objects","content":{"application/json":{"schema":{"type":"object","properties":{"workflows":{"type":"array","items":{"$ref":"#/components/schemas/Workflow"}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["workflows","meta"],"title":"listWorkflowsResponse","additionalProperties":false}}}},"getOrCreateWorkflowResponse":{"description":"Returns a [Workflow](#schema_workflow) object if creation succeeds. Returns an [Error](#errors) otherwise","content":{"application/json":{"schema":{"type":"object","properties":{"workflow":{"$ref":"#/components/schemas/Workflow"}},"required":["workflow"],"title":"getOrCreateWorkflowResponse","additionalProperties":false}}}},"listTagValuesResponse":{"description":"Empty response","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"value":{"type":"string"}},"required":["value"]}},"meta":{"type":"object","properties":{"nextToken":{"type":"string","description":"The token to use to retrieve the next page of results, passed as a query string parameter (value should be URL-encoded) to this API endpoint."}},"additionalProperties":false}},"required":["tags","meta"],"title":"listTagValuesResponse","additionalProperties":false}}}},"trackAnalyticsResponse":{"description":"Success","content":{"application/json":{"schema":{"type":"object","title":"trackAnalyticsResponse","additionalProperties":false}}}}},"requestBodies":{"createConversationBody":{"description":"Conversation data","content":{"application/json":{"schema":{"type":"object","properties":{"channel":{"type":"string","maxLength":200,"description":"Channel name"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Conversation](#schema_conversation)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a conversation from within a bot, call an action of the integration instead.","deprecated":true}},"required":["channel","tags"],"title":"createConversationBody","additionalProperties":false}}}},"getOrCreateConversationBody":{"description":"Conversation data","content":{"application/json":{"schema":{"type":"object","properties":{"channel":{"type":"string","maxLength":200,"description":"Channel name"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Conversation](#schema_conversation)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a conversation from within a bot, call an action of the integration instead.","deprecated":true},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing conversations. If provided, all specified tags must match exactly for a conversation to be considered a match. For example, with an existing conversation whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."}},"required":["channel","tags"],"title":"getOrCreateConversationBody","additionalProperties":false}}}},"updateConversationBody":{"description":"Conversation data","content":{"application/json":{"schema":{"type":"object","properties":{"currentTaskId":{"type":"string"},"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Tags for the [Conversation](#schema_conversation)"}},"title":"updateConversationBody","additionalProperties":false}}}},"addParticipantBody":{"description":"Participant data","content":{"application/json":{"schema":{"type":"object","properties":{"userId":{"type":"string","minLength":28,"maxLength":36,"description":"User id"}},"required":["userId"],"title":"addParticipantBody","additionalProperties":false}}}},"createEventBody":{"description":"Event data","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","maxLength":200,"description":"Type of the [Event](#schema_event)."},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the event defined by the integration installed on your bot or one of the default events created by our API."},"schedule":{"type":"object","properties":{"dateTime":{"type":"string","maxLength":28,"minLength":24,"description":"When the [Event](#schema_event) will be sent, in the ISO 8601 format"},"delay":{"type":"number","description":"Delay in milliseconds before sending the [Event](#schema_event)"}},"description":"Schedule the Event to be sent at a specific time. Either dateTime or delay must be provided.","additionalProperties":false},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation) to link the event to."},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user) to link the event to."},"workflowId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Workflow](#schema_workflow) to link the event to."},"messageId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Message](#schema_message) to link the event to."}},"required":["type","payload"],"title":"createEventBody","additionalProperties":false}}}},"createMessageBody":{"description":"Message data","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation)"},"type":{"type":"string","maxLength":200,"description":"Type of the [Message](#schema_message) represents the resource type that the message is related to"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Message](#schema_message). The set of [Tags](/docs/developers/concepts/tags) available on a [Message](#schema_message) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"schedule":{"type":"object","properties":{"dateTime":{"type":"string","maxLength":28,"minLength":24,"description":"When the [Message](#schema_message) will be sent, in the ISO 8601 format"},"delay":{"type":"number","description":"Delay in milliseconds before sending the [Message](#schema_message)"}},"description":"Schedule the Message to be sent at a specific time. Either dateTime or delay must be provided.","additionalProperties":false},"origin":{"type":"string","enum":["synthetic"]}},"required":["payload","userId","conversationId","type","tags"],"title":"createMessageBody","additionalProperties":false}}}},"getOrCreateMessageBody":{"description":"Message data","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"},"userId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [User](#schema_user)"},"conversationId":{"type":"string","minLength":28,"maxLength":36,"description":"ID of the [Conversation](#schema_conversation)"},"type":{"type":"string","maxLength":200,"description":"Type of the [Message](#schema_message) represents the resource type that the message is related to"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Message](#schema_message). The set of [Tags](/docs/developers/concepts/tags) available on a [Message](#schema_message) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"schedule":{"type":"object","properties":{"dateTime":{"type":"string","maxLength":28,"minLength":24,"description":"When the [Message](#schema_message) will be sent, in the ISO 8601 format"},"delay":{"type":"number","description":"Delay in milliseconds before sending the [Message](#schema_message)"}},"description":"Schedule the Message to be sent at a specific time. Either dateTime or delay must be provided.","additionalProperties":false},"origin":{"type":"string","enum":["synthetic"]},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing messages. If provided, all specified tags must match exactly for a message to be considered a match. For example, with an existing message whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."}},"required":["payload","userId","conversationId","type","tags"],"title":"getOrCreateMessageBody","additionalProperties":false}}}},"updateMessageBody":{"description":"Message data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string"},"description":"Set of [Tags](/docs/developers/concepts/tags) that you can attach to a [Conversation](#schema_conversation). The set of [Tags](/docs/developers/concepts/tags) available on a [Conversation](#schema_conversation) is restricted by the list of [Tags](/docs/developers/concepts/tags) defined previously by the [Bot](#schema_bot). Individual keys can be unset by posting an empty value to them."},"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content type of the message. Accepted payload options: Text, Image, Choice, Dropdown, Card, Carousel, File, Audio, Video, Location"}},"required":["tags"],"title":"updateMessageBody","additionalProperties":false}}}},"createUserBody":{"description":"User data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [User](#schema_user)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a [User](#schema_user) from within a bot, call an action of the integration instead.","deprecated":true},"name":{"type":"string","maxLength":200,"description":"Name of the user"},"pictureUrl":{"type":"string","maxLength":40000,"description":"URI of the user picture"}},"required":["tags"],"title":"createUserBody","additionalProperties":false}}}},"getOrCreateUserBody":{"description":"User data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [User](#schema_user)"},"integrationName":{"type":"string","maxLength":200,"description":"[DEPRECATED] To create a [User](#schema_user) from within a bot, call an action of the integration instead.","deprecated":true},"name":{"type":"string","maxLength":200,"description":"Name of the user"},"pictureUrl":{"type":"string","maxLength":40000,"description":"URI of the user picture"},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing users. If provided, all specified tags must match exactly for a user to be considered a match. For example, with an existing user whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."}},"required":["tags"],"title":"getOrCreateUserBody","additionalProperties":false}}}},"updateUserBody":{"description":"User data","content":{"application/json":{"schema":{"type":"object","properties":{"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [User](#schema_user)"},"name":{"type":"string","maxLength":200,"nullable":true,"description":"Name of the user"},"pictureUrl":{"type":"string","maxLength":40000,"nullable":true,"description":"URI of the user picture"}},"title":"updateUserBody","additionalProperties":false}}}},"setStateExpiryBody":{"description":"State expiry","content":{"application/json":{"schema":{"type":"object","properties":{"expiry":{"type":"number","minimum":1,"maximum":2592000000,"nullable":true,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["expiry"],"title":"setStateExpiryBody","additionalProperties":false}}}},"setStateBody":{"description":"State content","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"nullable":true,"description":"Payload is the content of the state defined by your bot."},"expiry":{"type":"number","minimum":1,"maximum":2592000000,"nullable":true,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["payload"],"title":"setStateBody","additionalProperties":false}}}},"getOrSetStateBody":{"description":"State content","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the state defined by your bot."},"expiry":{"type":"number","minimum":1,"maximum":2592000000,"nullable":true,"description":"Expiry of the [State](#schema_state) in milliseconds. The state will expire if it is idle for the configured value. By default, a state doesn't expire."}},"required":["payload"],"title":"getOrSetStateBody","additionalProperties":false}}}},"patchStateBody":{"description":"State content","content":{"application/json":{"schema":{"type":"object","properties":{"payload":{"type":"object","additionalProperties":true,"description":"Payload is the content of the state defined by your bot."}},"required":["payload"],"title":"patchStateBody","additionalProperties":false}}}},"callActionBody":{"description":"Action payload","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","maxLength":200,"description":"Type of the action"},"input":{"type":"object","additionalProperties":true,"description":"Input of the action"}},"required":["type","input"],"title":"callActionBody","additionalProperties":false}}}},"configureIntegrationBody":{"description":"Configuration of the integration","content":{"application/json":{"schema":{"type":"object","properties":{"identifier":{"type":"string","maxLength":200,"nullable":true,"description":"Unique identifier of the integration that was installed on the bot"},"scheduleRegisterCall":{"type":"string","enum":["hourly","daily","weekly","bi-weekly","monthly","bi-monthly","quarterly","yearly"],"description":"Recurring schedule on which `register()` will be called on the integration"},"sandboxIdentifiers":{"type":"object","nullable":true,"description":"**EXPERIMENTAL** Sandbox identifiers for the integration. Setting this to null will remove all sandbox identifiers. This is an experimental feature meant to be used by specific integrations.","additionalProperties":false}},"title":"configureIntegrationBody","additionalProperties":false}}}},"createTaskBody":{"description":"Task data","content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","maxLength":2000,"description":"Title describing the task"},"description":{"type":"string","maxLength":20000,"description":"All the notes related to the execution of the current task"},"type":{"type":"string","maxLength":200,"description":"Type of the task"},"data":{"type":"object","additionalProperties":true,"description":"Content related to the task"},"parentTaskId":{"type":"string","description":"Parent task id is the parent task that created this task"},"conversationId":{"type":"string","description":"Conversation id related to this task"},"userId":{"type":"string","description":"Specific user related to this task"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the task should be failed in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Task](#schema_task)"}},"required":["type","conversationId"],"title":"createTaskBody","additionalProperties":false}}}},"updateTaskBody":{"description":"Task data","content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","description":"Title describing the task"},"description":{"type":"string","description":"All the notes related to the execution of the current task"},"data":{"type":"object","additionalProperties":true,"description":"Content related to the task"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the task should be failed in the ISO 8601 format"},"status":{"type":"string","enum":["pending","in_progress","failed","completed","blocked","paused","timeout","cancelled"],"description":"Status of the task"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Task](#schema_task)"}},"title":"updateTaskBody","additionalProperties":false}}}},"createWorkflowBody":{"description":"Workflow data","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Name of the workflow"},"input":{"type":"object","additionalProperties":true,"description":"Content related to the workflow"},"parentWorkflowId":{"type":"string","description":"Parent workflow id is the parent workflow that created this workflow"},"conversationId":{"type":"string","description":"Conversation id related to this workflow"},"userId":{"type":"string","description":"Specific user related to this workflow"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the workflow should be failed in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Workflow](#schema_workflow)"},"status":{"type":"string","enum":["pending","in_progress","listening"]},"eventId":{"type":"string","description":"Event id must be specified if the workflow is created with the status in_progress"}},"required":["name","status"],"title":"createWorkflowBody","additionalProperties":false}}}},"updateWorkflowBody":{"description":"Workflow data","content":{"application/json":{"schema":{"type":"object","properties":{"output":{"type":"object","additionalProperties":true,"description":"Content related to the workflow"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the workflow should be failed in the ISO 8601 format"},"status":{"type":"string","enum":["completed","cancelled","listening","paused","failed","in_progress"],"description":"Status of the workflow"},"failureReason":{"type":"string","description":"Reason why the workflow failed"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Workflow](#schema_workflow)"},"userId":{"type":"string","description":"Specific user related to this workflow"},"eventId":{"type":"string","description":"Event id must be specified if the workflow is updated with the status in_progress"}},"title":"updateWorkflowBody","additionalProperties":false}}}},"getOrCreateWorkflowBody":{"description":"Workflow data","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Name of the workflow"},"input":{"type":"object","additionalProperties":true,"description":"Content related to the workflow"},"parentWorkflowId":{"type":"string","description":"Parent workflow id is the parent workflow that created this workflow"},"conversationId":{"type":"string","description":"Conversation id related to this workflow"},"userId":{"type":"string","description":"Specific user related to this workflow"},"timeoutAt":{"type":"string","format":"date-time","description":"The timeout date where the workflow should be failed in the ISO 8601 format"},"tags":{"type":"object","additionalProperties":{"type":"string","maxLength":500},"description":"Tags for the [Workflow](#schema_workflow)"},"status":{"type":"string","enum":["pending","in_progress","listening"]},"eventId":{"type":"string","description":"Event id must be specified if the workflow is created with the status in_progress"},"discriminateByTags":{"type":"array","items":{"type":"string","maxLength":500},"description":"Optional list of tag names to use for strict matching when looking up existing workflows. If provided, all specified tags must match exactly for a workflow to be considered a match. For example, with an existing workflow whose tags are {\"foo\": \"a\", \"bar\": \"b\", baz: \"c\"}: Without this parameter, ALL tags must match exactly. With [\"bar\",\"baz\"], all listed tags must match their values, and other tags are not considered."},"discriminateByStatusGroup":{"type":"string","enum":["active","finished"],"description":"When provided, will only match workflows whose status corresponds to the status group."}},"required":["name","status"],"title":"getOrCreateWorkflowBody","additionalProperties":false}}}},"trackAnalyticsBody":{"description":"Add an event to the analytics","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"count":{"type":"integer","minimum":1}},"required":["name","count"],"title":"trackAnalyticsBody","additionalProperties":false}}}}},"parameters":{}}}
|