clawdbot-workspace/closebot-swagger.json

9349 lines
237 KiB
JSON

{
"openapi": "3.0.1",
"info": {
"title": "CloseBot API",
"version": "v1"
},
"servers": [
{
"url": "https://api.closebot.com",
"description": "CloseBot API Endpoint"
}
],
"paths": {
"/account/apiKey": {
"post": {
"tags": [
"Account"
],
"summary": "Create API Key",
"description": "Creates a new API key.",
"requestBody": {
"description": "Key name",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateApiKeyInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateApiKeyInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateApiKeyInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/CreateApiKeyOutput"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateApiKeyOutput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateApiKeyOutput"
}
}
}
}
}
},
"get": {
"tags": [
"Account"
],
"summary": "List API keys",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ApiKeyDTO"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ApiKeyDTO"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ApiKeyDTO"
}
}
}
}
}
}
}
},
"/account/apiKey/{keyId}": {
"delete": {
"tags": [
"Account"
],
"summary": "Delete API Key",
"description": "Deletes an API key.",
"parameters": [
{
"name": "keyId",
"in": "path",
"description": "The key ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/agency/current": {
"get": {
"tags": [
"Agency"
],
"summary": "Get agency",
"description": "Retrieve the current agency details.\r\n\r\nCurrently, CloseBot accounts can only be part of one agency.",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/AgencyDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/AgencyDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AgencyDto"
}
}
}
}
}
}
},
"/agency/usage": {
"get": {
"tags": [
"Agency"
],
"summary": "Get usage",
"parameters": [
{
"name": "scopes",
"in": "query",
"description": "Comma-separated list of scopes to retrieve. Scopes are: bots, storage, users, responses.",
"style": "form",
"schema": {
"type": "string",
"default": "bots,storage,users,responses"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/agency/invite": {
"post": {
"tags": [
"Agency"
],
"summary": "Invite users",
"requestBody": {
"description": "Emails to invite",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InviteUserInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/InviteUserInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/InviteUserInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
},
"delete": {
"tags": [
"Agency"
],
"summary": "Revoke invitation",
"parameters": [
{
"name": "email",
"in": "query",
"description": "The invited email to revoke",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/agency": {
"get": {
"tags": [
"Agency"
],
"summary": "List agencies",
"description": "List all agencies the account is a part of.\r\n\r\nCurrently, CloseBot accounts can only be part of one agency.",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AgencyDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AgencyDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AgencyDto"
}
}
}
}
}
}
}
},
"/agency/billing/refill": {
"post": {
"tags": [
"Billing"
],
"summary": "Refill agency wallet",
"description": "Attempts to charge the payment method on file for the agency to refill the agency wallet.\r\n\r\n<strong>\r\nInvoking this endpoint will charge you. Use with caution.\r\n</strong>",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateRefillDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateRefillDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateRefillDto"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/agency/billing/refill/source/{sourceId}": {
"post": {
"tags": [
"Billing"
],
"summary": "Refill source wallet",
"parameters": [
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateRefillDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateRefillDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateRefillDto"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/agency/billing/re-billing": {
"get": {
"tags": [
"Billing"
],
"summary": "Get re-billing settings",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ReBillingDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReBillingDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ReBillingDto"
}
}
}
}
}
},
"put": {
"tags": [
"Billing"
],
"summary": "Update re-billing",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReBillingUpdateInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ReBillingUpdateInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/ReBillingUpdateInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/agency/billing/balance": {
"get": {
"tags": [
"Billing"
],
"summary": "Get agency balance",
"description": "Gets the balance of the agency.",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BalanceDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BalanceDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BalanceDto"
}
}
}
}
}
}
},
"/agency/billing/options": {
"get": {
"tags": [
"Billing"
],
"summary": "Get agency billing",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BillingOptionsDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BillingOptionsDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BillingOptionsDto"
}
}
}
}
}
},
"put": {
"tags": [
"Billing"
],
"summary": "Update agency billing",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBillingConfigInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBillingConfigInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateBillingConfigInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BillingOptionsDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BillingOptionsDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BillingOptionsDto"
}
}
}
}
}
}
},
"/agency/billing/balance/source/{sourceId}": {
"get": {
"tags": [
"Billing"
],
"summary": "Get source balance",
"description": "Gets the balance of the source.",
"parameters": [
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BalanceDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BalanceDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BalanceDto"
}
}
}
}
}
}
},
"/agency/billing/transactions/source/{sourceId}": {
"get": {
"tags": [
"Billing"
],
"summary": "List source transactions",
"parameters": [
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "status",
"in": "query",
"description": "Filter by status when included. Statuses are: pending, succeeded, failed.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"description": "",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"description": "",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 20
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransactionDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransactionDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransactionDto"
}
}
}
}
}
}
},
"post": {
"tags": [
"Billing"
],
"summary": "Add source transaction",
"parameters": [
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AddSourceTransactionDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AddSourceTransactionDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AddSourceTransactionDto"
}
}
}
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/TransactionDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/TransactionDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/TransactionDto"
}
}
}
}
}
}
},
"/agency/billing/transactions": {
"get": {
"tags": [
"Billing"
],
"summary": "List agency transactions",
"parameters": [
{
"name": "status",
"in": "query",
"description": "Filter by status when included. Statuses are: pending, succeeded, failed.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"description": "",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 1
}
},
{
"name": "pageSize",
"in": "query",
"description": "",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 20
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransactionDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransactionDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TransactionDto"
}
}
}
}
}
}
}
},
"/agency/billing/usages": {
"get": {
"tags": [
"Billing"
],
"summary": "List billed usages",
"parameters": [
{
"name": "startTime",
"in": "query",
"description": "The start time.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "endTime",
"in": "query",
"description": "The end time.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BilledUsageDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BilledUsageDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BilledUsageDto"
}
}
}
}
}
}
}
},
"/agency/billing/transactions/source/{sourceId}/{id}": {
"delete": {
"tags": [
"Billing"
],
"summary": "Delete source transaction",
"parameters": [
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "id",
"in": "path",
"description": "ID of the transaction to delete.",
"required": true,
"style": "simple",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/bot/ai": {
"post": {
"tags": [
"Bot"
],
"summary": "Create bot with AI",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AiCreateBotInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AiCreateBotInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AiCreateBotInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
}
}
}
}
}
},
"/bot/{id}/source/{sourceId}": {
"post": {
"tags": [
"Bot"
],
"summary": "Attach a source to a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AttachSourceInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AttachSourceInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AttachSourceInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
},
"delete": {
"tags": [
"Bot"
],
"summary": "Detach a source from a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/bot": {
"post": {
"tags": [
"Bot"
],
"summary": "Create a new bot",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateBotInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateBotInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateBotInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
}
}
}
}
},
"get": {
"tags": [
"Bot"
],
"summary": "List bots",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotDto"
}
}
}
}
}
}
}
},
"/bot/{id}": {
"delete": {
"tags": [
"Bot"
],
"summary": "Delete a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
},
"get": {
"tags": [
"Bot"
],
"summary": "Get a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
}
}
}
}
},
"put": {
"tags": [
"Bot"
],
"summary": "Update a bot",
"description": "Updates fields in a bot.\r\n\r\nOnly non-null fields are updated. Any missing or null field is ignored.",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBotInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBotInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateBotInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/UpdateBotErrorResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBotErrorResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBotErrorResponse"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/UpdateBotErrorResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBotErrorResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBotErrorResponse"
}
}
}
}
}
}
},
"/bot/{id}/duplicate": {
"post": {
"tags": [
"Bot"
],
"summary": "Duplicate a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BotDto"
}
}
}
}
}
}
},
"/bot/{id}/export": {
"get": {
"tags": [
"Bot"
],
"summary": "Export a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "botVersion",
"in": "query",
"description": "The bot version (x.y.z). If not provided, the latest version is exported.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ExportBotResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ExportBotResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ExportBotResponse"
}
}
}
}
}
}
},
"/bot/bbb/templates": {
"get": {
"tags": [
"Bot"
],
"summary": "Get bot builder builder templates",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
},
"/bot/{id}/steps": {
"get": {
"tags": [
"Bot"
],
"summary": "Get steps for a version",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "botVersion",
"in": "query",
"description": "The bot version (x.y.z).",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": { }
},
"application/json": {
"schema": { }
},
"text/json": {
"schema": { }
}
}
}
}
}
},
"/bot/nodeDescriptors": {
"get": {
"tags": [
"Bot"
],
"summary": "Get the node descriptors",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/NodeInformation"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/NodeInformation"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/NodeInformation"
}
}
}
}
}
}
},
"/bot/{id}/publish": {
"post": {
"tags": [
"Bot"
],
"summary": "Publish a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/PublishBotResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/PublishBotResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/PublishBotResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/PublishBotResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/PublishBotResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/PublishBotResponse"
}
}
}
}
}
}
},
"/bot/{id}/save": {
"post": {
"tags": [
"Bot"
],
"summary": "Save a bot",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SaveBotInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SaveBotInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/SaveBotInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SaveBotResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SaveBotResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SaveBotResponse"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SaveBotResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SaveBotResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SaveBotResponse"
}
}
}
}
}
}
},
"/bot/{id}/saveTools": {
"post": {
"tags": [
"Bot"
],
"summary": "Save bot tools",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ToolInputDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ToolInputDto"
}
}
},
"application/*+json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ToolInputDto"
}
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotToolDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotToolDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotToolDto"
}
}
}
}
}
}
}
},
"/bot/{id}/version/{version}": {
"put": {
"tags": [
"Bot"
],
"summary": "Update a bot version",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "version",
"in": "path",
"description": "The version ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateVersionInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateVersionInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateVersionInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/botMetric/agencySummary": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get agency summary",
"parameters": [
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/AgencyDashboardSummaryResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/AgencyDashboardSummaryResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AgencyDashboardSummaryResponse"
}
}
}
}
}
}
},
"/botMetric/actionCount": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get action count",
"parameters": [
{
"name": "leadId",
"in": "query",
"description": "Optional lead ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "botId",
"in": "query",
"description": "Optional bot ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "Optional start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "Optional end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "integer",
"format": "int32"
}
},
"application/json": {
"schema": {
"type": "integer",
"format": "int32"
}
},
"text/json": {
"schema": {
"type": "integer",
"format": "int32"
}
}
}
}
}
}
},
"/botMetric/actions": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get actions",
"parameters": [
{
"name": "leadId",
"in": "query",
"description": "Optional lead ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "botId",
"in": "query",
"description": "Optional bot ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "Optional start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "Optional end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "maxCount",
"in": "query",
"description": "Optional maximum number of actions to return.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricAction"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricAction"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricAction"
}
}
}
}
}
}
}
},
"/botMetric/agencyMetric": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get agency metric",
"parameters": [
{
"name": "metric",
"in": "query",
"description": "The metric to get. Valid options: responses, bookings, activeSources, contacts, totalStorage, revenue.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "The start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "The end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "resolution",
"in": "query",
"description": "The resolution.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/botMetric/bookingGraph": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get booking graph",
"parameters": [
{
"name": "start",
"in": "query",
"description": "The start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "The end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "resolution",
"in": "query",
"description": "The resolution. Valid options are hourly, daily, or monthly.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/botMetric/leaderboard": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get global leaderboard",
"parameters": [
{
"name": "metric",
"in": "query",
"description": "The metric to get. Valid options: responses, bookings, contacts.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "The start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "The end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "numTopLeaders",
"in": "query",
"description": "The number of top leaders to return.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeaderboardResponse"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeaderboardResponse"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeaderboardResponse"
}
}
}
}
}
}
}
},
"/botMetric/localleaderboard": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get local leaderboard",
"parameters": [
{
"name": "metric",
"in": "query",
"description": "The metric to get. Valid options: responses, bookings, contacts.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "The start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "The end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "numSurroundingAgencies",
"in": "query",
"description": "The number of surrounding agencies to return.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeaderboardResponse"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeaderboardResponse"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeaderboardResponse"
}
}
}
}
}
}
}
},
"/botMetric/logs": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get logs",
"parameters": [
{
"name": "botId",
"in": "query",
"description": "Optional bot ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "messageId",
"in": "query",
"description": "Optional message ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "leadId",
"in": "query",
"description": "Optional lead ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "actionId",
"in": "query",
"description": "Optional action ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "Optional start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "Optional end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "maxCount",
"in": "query",
"description": "Optional maximum number of logs to return.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricLog"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricLog"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricLog"
}
}
}
}
}
}
}
},
"/botMetric/messageCount": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get message count",
"parameters": [
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "leadId",
"in": "query",
"description": "Optional lead ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "Optional start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "Optional end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "integer",
"format": "int32"
}
},
"application/json": {
"schema": {
"type": "integer",
"format": "int32"
}
},
"text/json": {
"schema": {
"type": "integer",
"format": "int32"
}
}
}
}
}
}
},
"/botMetric/messageFeedback": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get messages with feedback",
"parameters": [
{
"name": "leadId",
"in": "query",
"description": "The lead ID.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/MessageFeedbackResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/MessageFeedbackResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/MessageFeedbackResponse"
}
}
}
}
}
},
"post": {
"tags": [
"BotMetric"
],
"summary": "Save message feedback",
"requestBody": {
"description": "The message feedback request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/MessageFeedbackRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/MessageFeedbackRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/MessageFeedbackRequest"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/botMetric/messageLikes": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get messages with likes",
"parameters": [
{
"name": "leadId",
"in": "query",
"description": "The lead ID.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/MessageLikesResponse"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/MessageLikesResponse"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/MessageLikesResponse"
}
}
}
}
}
}
},
"/botMetric/messageReason": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get message feedback reason",
"parameters": [
{
"name": "messageId",
"in": "query",
"description": "The message ID.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/MessageReason"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/MessageReason"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/MessageReason"
}
}
}
}
}
}
},
"/botMetric/messages": {
"get": {
"tags": [
"BotMetric"
],
"summary": "Get messages",
"parameters": [
{
"name": "sourceId",
"in": "query",
"description": "Optional source ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "leadId",
"in": "query",
"description": "Optional lead ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "start",
"in": "query",
"description": "Optional start date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "end",
"in": "query",
"description": "Optional end date.",
"style": "form",
"schema": {
"type": "string",
"format": "date-time"
}
},
{
"name": "maxCount",
"in": "query",
"description": "Optional maximum number of messages to return.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricMessage"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricMessage"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricMessage"
}
}
}
}
}
}
}
},
"/botVariables/{botId}/{sourceId}": {
"get": {
"tags": [
"BotSourceVariable"
],
"summary": "Get source variables",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVariableDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVariableDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVariableDto"
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"post": {
"tags": [
"BotSourceVariable"
],
"summary": "Update a source variable",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The list of variables to update.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVariableUpdateInput"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVariableUpdateInput"
}
}
},
"application/*+json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVariableUpdateInput"
}
}
}
}
},
"responses": {
"200": {
"description": "Success"
},
"400": {
"description": "Bad Request",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/botTemplates": {
"get": {
"tags": [
"BotTemplate"
],
"summary": "List templates",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotTemplateDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotTemplateDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotTemplateDto"
}
}
}
}
}
}
}
},
"/bot/{botId}/testSession": {
"post": {
"tags": [
"BotTesting"
],
"summary": "Create a test session",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/TestSession"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/TestSession"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/TestSession"
}
}
}
}
}
},
"get": {
"tags": [
"BotTesting"
],
"summary": "List test sessions",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "offset",
"in": "query",
"description": "The offset.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 0
}
},
{
"name": "maxCount",
"in": "query",
"description": "The maximum count.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 100
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ListLeadDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListLeadDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ListLeadDto"
}
}
}
}
}
}
},
"/bot/{botId}/testSession/{leadId}": {
"delete": {
"tags": [
"BotTesting"
],
"summary": "Delete a test session",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "leadId",
"in": "path",
"description": "The lead ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"BotTesting"
],
"summary": "Update a test session",
"parameters": [
{
"name": "leadId",
"in": "path",
"description": "The lead ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "botId",
"in": "path",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The update session input.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSessionInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSessionInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateSessionInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/UpdateSessionDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSessionDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSessionDto"
}
}
}
}
}
}
},
"/bot/{botId}/testSession/{leadId}/force-step": {
"post": {
"tags": [
"BotTesting"
],
"summary": "Force processing",
"parameters": [
{
"name": "leadId",
"in": "path",
"description": "The lead ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "botId",
"in": "path",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/bot/{botId}/testSession/messages/{leadId}": {
"get": {
"tags": [
"BotTesting"
],
"summary": "Listen for messages",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "leadId",
"in": "path",
"description": "The lead ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/bot/{botId}/testSession/{leadId}/rollback": {
"post": {
"tags": [
"BotTesting"
],
"summary": "Rollback a test session",
"parameters": [
{
"name": "leadId",
"in": "path",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "botId",
"in": "path",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BotTestingRollbackInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BotTestingRollbackInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/BotTestingRollbackInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/BotTestingRollbackOutput"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/BotTestingRollbackOutput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/BotTestingRollbackOutput"
}
}
}
}
}
}
},
"/bot/{botId}/testSession/message": {
"post": {
"tags": [
"BotTesting"
],
"summary": "Send a message to a test session",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The bot ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TestSessionMessageInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/TestSessionMessageInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/TestSessionMessageInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/hierarchy": {
"post": {
"tags": [
"Hierarchy"
],
"summary": "Add a folder",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AddHierarchyInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AddHierarchyInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AddHierarchyInput"
}
}
}
},
"responses": {
"201": {
"description": "Created",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/AddHierarchyOutput"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/AddHierarchyOutput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AddHierarchyOutput"
}
}
}
}
}
},
"get": {
"tags": [
"Hierarchy"
],
"summary": "List folders",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ListHierarchyResult"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ListHierarchyResult"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ListHierarchyResult"
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/hierarchy/{id}": {
"delete": {
"tags": [
"Hierarchy"
],
"summary": "Delete a folder",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the folder to delete.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"get": {
"tags": [
"Hierarchy"
],
"summary": "Get a folder",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the folder to get.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ListHierarchyResult"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListHierarchyResult"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ListHierarchyResult"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Hierarchy"
],
"summary": "Update a folder",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the folder to update.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HierarchyInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/HierarchyInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/HierarchyInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/lead/{leadId}": {
"delete": {
"tags": [
"Lead"
],
"summary": "Delete a lead",
"parameters": [
{
"name": "leadId",
"in": "path",
"description": "The ID of the lead to delete.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"get": {
"tags": [
"Lead"
],
"summary": "Get a lead",
"parameters": [
{
"name": "leadId",
"in": "path",
"description": "The ID of the lead to get.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/LeadDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LeadDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LeadDto"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Lead"
],
"summary": "Update lead fields",
"parameters": [
{
"name": "leadId",
"in": "path",
"description": "The ID of the lead to update.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LeadUpdateDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LeadUpdateDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/LeadUpdateDto"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/lead": {
"get": {
"tags": [
"Lead"
],
"summary": "List leads",
"parameters": [
{
"name": "page",
"in": "query",
"description": "The page number.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 0
}
},
{
"name": "pageSize",
"in": "query",
"description": "The page size.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 20
}
},
{
"name": "sourceId",
"in": "query",
"description": "The source ID.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "leadId",
"in": "query",
"description": "The lead ID.",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/LeadDtoPaginated"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LeadDtoPaginated"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LeadDtoPaginated"
}
}
}
}
}
}
},
"/lead/search": {
"post": {
"tags": [
"Lead"
],
"summary": "Search leads",
"requestBody": {
"description": "The search query input.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SearchQueryInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SearchQueryInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/SearchQueryInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeadDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeadDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeadDto"
}
}
}
}
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/lead/{leadId}/instance/{botId}": {
"put": {
"tags": [
"Lead"
],
"summary": "Update a lead instance",
"parameters": [
{
"name": "leadId",
"in": "path",
"description": "The ID of the lead to update.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "botId",
"in": "path",
"description": "The ID of the bot to update.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The update instance input.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InstanceUpdateDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/InstanceUpdateDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/InstanceUpdateDto"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/library/files/{fileId}/source/{sourceId}": {
"post": {
"tags": [
"Library"
],
"summary": "Attach a file to a source",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to attach.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "path",
"description": "The ID of the source to attach the file to.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
},
"delete": {
"tags": [
"Library"
],
"summary": "Detach a file from a source",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to detach.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sourceId",
"in": "path",
"description": "The ID of the source to detach the file from.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
},
"400": {
"description": "Bad Request",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/library/files/{fileId}": {
"delete": {
"tags": [
"Library"
],
"summary": "Delete a file",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to delete.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"get": {
"tags": [
"Library"
],
"summary": "Get a file metadata",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to get.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/FileDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/FileDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/FileDto"
}
}
}
}
}
},
"put": {
"tags": [
"Library"
],
"summary": "Replace file content",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to update.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"newFile": {
"type": "string",
"format": "binary"
}
}
},
"encoding": {
"newFile": {
"style": "form"
}
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/library/files/{fileId}/scrape-pages": {
"get": {
"tags": [
"Library"
],
"summary": "Get the scrape pages for a file",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to get the scrape pages for.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WebscrapePageDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WebscrapePageDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WebscrapePageDto"
}
}
}
}
}
}
},
"put": {
"tags": [
"Library"
],
"summary": "Update the scrape pages for a file",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to update the scrape pages for.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The input containing the new scrape pages.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WebscrapePageUpdateDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/WebscrapePageUpdateDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/WebscrapePageUpdateDto"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/library/files": {
"get": {
"tags": [
"Library"
],
"summary": "List files",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FileDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FileDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FileDto"
}
}
}
}
}
}
},
"post": {
"tags": [
"Library"
],
"summary": "Upload a file",
"requestBody": {
"content": {
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"file": {
"type": "string",
"format": "binary"
}
}
},
"encoding": {
"file": {
"style": "form"
}
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/library/webscrape": {
"post": {
"tags": [
"Library"
],
"summary": "Create a Web-Scrape file",
"requestBody": {
"description": "The input containing the webscrape information.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UploadWebscrapeToSourceInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UploadWebscrapeToSourceInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UploadWebscrapeToSourceInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/library/files/{fileId}/view": {
"get": {
"tags": [
"Library"
],
"summary": "Get file content",
"parameters": [
{
"name": "fileId",
"in": "path",
"description": "The ID of the file to view.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/bot-live-demo/{botId}": {
"post": {
"tags": [
"LiveDemo"
],
"summary": "Create Live Demo",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The ID of the Bot",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoCreateDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoCreateDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoCreateDto"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
}
}
}
}
},
"get": {
"tags": [
"LiveDemo"
],
"summary": "List Live Demos",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The ID of the Bot",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LiveDemoDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LiveDemoDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LiveDemoDto"
}
}
}
}
}
}
}
},
"/bot-live-demo/live/{key}/session": {
"post": {
"tags": [
"LiveDemo"
],
"summary": "Create Live Demo Session",
"parameters": [
{
"name": "key",
"in": "path",
"description": "The key of the demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/LiveDemoSessionDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoSessionDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoSessionDto"
}
}
}
}
}
}
},
"/bot-live-demo/{botId}/{key}": {
"delete": {
"tags": [
"LiveDemo"
],
"summary": "Delete Live Demo",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The ID of the Bot",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "path",
"description": "The key of the live demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
}
}
}
}
},
"put": {
"tags": [
"LiveDemo"
],
"summary": "Update Live Demo",
"parameters": [
{
"name": "botId",
"in": "path",
"description": "The ID of the Bot",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "key",
"in": "path",
"description": "The key of the live demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoCreateDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoCreateDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoCreateDto"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
}
}
}
}
}
},
"/bot-live-demo/live/{key}": {
"get": {
"tags": [
"LiveDemo"
],
"summary": "Get Live Demo",
"parameters": [
{
"name": "key",
"in": "path",
"description": "The key of the demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoDto"
}
}
}
}
}
}
},
"/bot-live-demo/live/{key}/session/{sessionLeadId}": {
"get": {
"tags": [
"LiveDemo"
],
"summary": "Get Live Demo Lead",
"parameters": [
{
"name": "key",
"in": "path",
"description": "The key of the demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sessionLeadId",
"in": "path",
"description": "The session lead ID",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
},
"put": {
"tags": [
"LiveDemo"
],
"summary": "Update Live Demo Fields",
"parameters": [
{
"name": "key",
"in": "path",
"description": "The key of the demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sessionLeadId",
"in": "path",
"description": "The session lead ID",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LeadUpdateDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LeadUpdateDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/LeadUpdateDto"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/bot-live-demo/live/{key}/session/{sessionLeadId}/message": {
"post": {
"tags": [
"LiveDemo"
],
"summary": "Stream Live Demo Messages",
"parameters": [
{
"name": "key",
"in": "path",
"description": "The key of the demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sessionLeadId",
"in": "path",
"description": "The session lead ID",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoMessageInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoMessageInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/LiveDemoMessageInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/bot-live-demo/live/{key}/session/{sessionLeadId}/stream": {
"get": {
"tags": [
"LiveDemo"
],
"summary": "Stream Live Demo Messages",
"parameters": [
{
"name": "key",
"in": "path",
"description": "The key of the demo",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
},
{
"name": "sessionLeadId",
"in": "path",
"description": "The session lead ID",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/notifications/{id}": {
"delete": {
"tags": [
"Notification"
],
"summary": "Delete a notification",
"parameters": [
{
"name": "id",
"in": "path",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"default": {
"description": "Error",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/NotificationDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/NotificationDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/NotificationDto"
}
}
}
}
}
},
"put": {
"tags": [
"Notification"
],
"summary": "Update a notification",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the notification to update.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The notification update input.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NotificationUpdateDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/NotificationUpdateDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/NotificationUpdateDto"
}
}
}
},
"responses": {
"default": {
"description": "Error",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/NotificationDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/NotificationDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/NotificationDto"
}
}
}
}
}
}
},
"/notifications/forwarding": {
"get": {
"tags": [
"Notification"
],
"summary": "Get notification forwarding settings",
"responses": {
"200": {
"description": "Success"
}
}
},
"put": {
"tags": [
"Notification"
],
"summary": "Update notification forwarding settings",
"requestBody": {
"description": "The notification forwarding settings.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NotificationForwardingDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/NotificationForwardingDto"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/NotificationForwardingDto"
}
}
}
},
"responses": {
"200": {
"description": "Success"
},
"401": {
"description": "Unauthorized",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/notifications": {
"get": {
"tags": [
"Notification"
],
"summary": "List notifications",
"responses": {
"default": {
"description": "Error",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NotificationDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NotificationDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NotificationDto"
}
}
}
}
}
}
}
},
"/persona": {
"post": {
"tags": [
"Persona"
],
"summary": "Create a new persona",
"requestBody": {
"description": "The persona input.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreatePersonaInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreatePersonaInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreatePersonaInput"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
},
"get": {
"tags": [
"Persona"
],
"summary": "List personas",
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PersonaDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PersonaDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PersonaDto"
}
}
}
}
}
}
}
},
"/persona/{id}": {
"delete": {
"tags": [
"Persona"
],
"summary": "Delete a persona",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the persona to delete.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"get": {
"tags": [
"Persona"
],
"summary": "Get a persona",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the persona to get.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/PersonaDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/PersonaDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/PersonaDto"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
},
"put": {
"tags": [
"Persona"
],
"summary": "Update a persona",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the persona to update.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The persona input.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdatePersonaInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdatePersonaInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdatePersonaInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/PersonaDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/PersonaDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/PersonaDto"
}
}
}
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/smart-faq/answered-followup": {
"post": {
"tags": [
"SmartFAQ"
],
"summary": "Follow up on answered FAQs",
"requestBody": {
"description": "The request containing a list of lead IDs.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AnsweredFAQFollowUpRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AnsweredFAQFollowUpRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AnsweredFAQFollowUpRequest"
}
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
},
"/smart-faq/answer": {
"post": {
"tags": [
"SmartFAQ"
],
"summary": "Answer multiple FAQs",
"requestBody": {
"description": "The answer multiple FAQs request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AnswerMultipleFAQsRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AnswerMultipleFAQsRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AnswerMultipleFAQsRequest"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartFAQDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartFAQDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartFAQDto"
}
}
}
}
}
}
}
},
"/smart-faq": {
"post": {
"tags": [
"SmartFAQ"
],
"summary": "Create a new FAQ",
"requestBody": {
"description": "The create FAQ request.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateSmartFAQRequest"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/CreateSmartFAQRequest"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/CreateSmartFAQRequest"
}
}
}
},
"responses": {
"201": {
"description": "Created"
}
}
},
"get": {
"tags": [
"SmartFAQ"
],
"summary": "List FAQs",
"parameters": [
{
"name": "sourceId",
"in": "query",
"description": "The source ID of the FAQs.",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "state",
"in": "query",
"description": "The state of the FAQs. \"compressed\" or \"uncompressed\".",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "answered",
"in": "query",
"description": "The answered status of the FAQs. \"answered\" or \"unanswered\".",
"style": "form",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartFAQDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartFAQDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SmartFAQDto"
}
}
}
}
}
}
}
},
"/smart-faq/{id}": {
"delete": {
"tags": [
"SmartFAQ"
],
"summary": "Delete an FAQ",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The ID of the FAQ to delete.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "No Content"
},
"404": {
"description": "Not Found",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/ProblemDetails"
}
}
}
}
}
}
},
"/agency/source": {
"post": {
"tags": [
"Source"
],
"summary": "Add a source",
"requestBody": {
"description": "Source information.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AddSourceInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/AddSourceInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/AddSourceInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"text/plain": {
"schema": {
"type": "string"
}
},
"application/json": {
"schema": {
"type": "string"
}
},
"text/json": {
"schema": {
"type": "string"
}
}
}
}
}
},
"get": {
"tags": [
"Source"
],
"summary": "List sources",
"description": "Retrieves sources within the current agency.",
"parameters": [
{
"name": "pageSize",
"in": "query",
"description": "Size of each page (max 100)",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 20
}
},
{
"name": "page",
"in": "query",
"description": "The page number. For example, page 5 with page size of 20 would start at offset 100.",
"style": "form",
"schema": {
"type": "integer",
"format": "int32",
"default": 0
}
},
{
"name": "query",
"in": "query",
"description": "Search by source name",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "category",
"in": "query",
"description": "Search by only specific categories (GHL, HubSpot, WebHook, etc)",
"style": "form",
"schema": {
"type": "string"
}
},
{
"name": "order",
"in": "query",
"description": "How results should be ordered. \"+\" or \"-\" prefix to specific ascending or descending.",
"style": "form",
"schema": {
"type": "string",
"default": "+id"
}
},
{
"name": "forceTokenRefresh",
"in": "query",
"description": "When true, access token for all returned sources are refreshed.",
"style": "form",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SourceDtoPaginated"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SourceDtoPaginated"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SourceDtoPaginated"
}
}
}
}
}
}
},
"/agency/source/{id}": {
"delete": {
"tags": [
"Source"
],
"summary": "Delete a source",
"description": "Deletes a source and all associated information from Closebot.\r\n\r\nAlso attempts to uninstall the Closebot app from the external CRM.",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success"
}
}
},
"get": {
"tags": [
"Source"
],
"summary": "Get a source",
"description": "Retrieves information for a single source.",
"operationId": "Get a source",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The source ID",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
}
}
}
}
}
},
"/agency/source/{id}/calendars": {
"get": {
"tags": [
"Source"
],
"summary": "List source calendars",
"description": "Lists all calendars attached to a source.\r\n\r\nThis will return both manually added calendars and calendars from the external CRM.",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceCalendarDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceCalendarDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceCalendarDto"
}
}
}
}
}
}
}
},
"/agency/source/{id}/channels": {
"get": {
"tags": [
"Source"
],
"summary": "List source channels",
"description": "Lists all channels available to a source.",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceChannelDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceChannelDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceChannelDto"
}
}
}
}
}
}
}
},
"/agency/source/{id}/fields": {
"get": {
"tags": [
"Source"
],
"summary": "List source fields",
"description": "",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SourceFieldCollectionDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SourceFieldCollectionDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SourceFieldCollectionDto"
}
}
}
}
}
}
},
"/agency/source/{id}/tags": {
"get": {
"tags": [
"Source"
],
"summary": "List source tags",
"parameters": [
{
"name": "id",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceTagDto"
}
}
},
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceTagDto"
}
}
},
"text/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceTagDto"
}
}
}
}
}
}
}
},
"/agency/source/{sourceId}": {
"put": {
"tags": [
"Source"
],
"summary": "Update a source",
"description": "Updates fields in a source.\r\n\r\nOnly non-null fields are updated. Any missing or null field is ignored.",
"parameters": [
{
"name": "sourceId",
"in": "path",
"description": "The source ID.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The fields to update.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSourceInput"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSourceInput"
}
},
"application/*+json": {
"schema": {
"$ref": "#/components/schemas/UpdateSourceInput"
}
}
}
},
"responses": {
"200": {
"description": "Success",
"content": {
"text/plain": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
},
"application/json": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
},
"text/json": {
"schema": {
"$ref": "#/components/schemas/SourceDto"
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"text/plain": {
"schema": {
"type": "string"
}
},
"application/json": {
"schema": {
"type": "string"
}
},
"text/json": {
"schema": {
"type": "string"
}
}
}
}
}
}
},
"/webhook/event/{sourceId}": {
"post": {
"tags": [
"Webhook"
],
"summary": "Send a webhook event",
"parameters": [
{
"name": "sourceId",
"in": "path",
"description": "The ID of the WebHook source.",
"required": true,
"style": "simple",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "The body of the webhook event.",
"content": {
"application/json": {
"schema": { }
},
"text/json": {
"schema": { }
},
"application/*+json": {
"schema": { }
}
}
},
"responses": {
"200": {
"description": "Success"
}
}
}
}
},
"components": {
"schemas": {
"AddHierarchyInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the folder",
"nullable": true
},
"parentId": {
"type": "string",
"description": "The parent ID of the folder",
"nullable": true
}
},
"additionalProperties": false
},
"AddHierarchyOutput": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the folder",
"nullable": true
}
},
"additionalProperties": false
},
"AddSourceInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"category": {
"type": "string",
"nullable": true
},
"key": {
"type": "string",
"nullable": true
},
"accessToken": {
"type": "string",
"nullable": true
},
"refreshToken": {
"type": "string",
"nullable": true
},
"expiresIn": {
"type": "integer",
"format": "int32",
"nullable": true
},
"autoShutoff": {
"type": "boolean",
"nullable": true
},
"gracefulGoodbye": {
"type": "boolean",
"nullable": true
},
"summarizeAttachments": {
"type": "boolean",
"nullable": true
},
"webhookCallback": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"AddSourceTransactionDto": {
"type": "object",
"properties": {
"amount": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"AgencyDashboardSummaryResponse": {
"type": "object",
"properties": {
"currentMonthMessageCount": {
"type": "integer",
"description": "The number of messages sent to leads in the current month",
"format": "int32"
},
"lastMonthMessageCount": {
"type": "integer",
"description": "The number of messages sent to leads in the last month",
"format": "int32"
},
"totalStorage": {
"type": "number",
"description": "The total storage used by the agency",
"format": "double"
},
"currentMonthSuccessfulBookings": {
"type": "integer",
"description": "The number of successful bookings in the current month",
"format": "int32"
},
"lastMonthSuccessfulBookings": {
"type": "integer",
"description": "The number of successful bookings in the last month",
"format": "int32"
},
"currentMonthActiveSources": {
"type": "integer",
"description": "The number of active sources in the current month",
"format": "int32"
},
"lastMonthActiveSources": {
"type": "integer",
"description": "The number of active sources in the last month",
"format": "int32"
},
"currentUsers": {
"type": "integer",
"description": "The number of users in the current month",
"format": "int32"
},
"currentMonthContacts": {
"type": "integer",
"description": "The number of leads in the current month",
"format": "int32"
},
"lastMonthContacts": {
"type": "integer",
"description": "The number of leads in the last month",
"format": "int32"
}
},
"additionalProperties": false
},
"AgencyDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"members": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AgencyMemberDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"AgencyMemberDto": {
"type": "object",
"properties": {
"accountId": {
"type": "string",
"nullable": true
},
"role": {
"type": "string",
"nullable": true
},
"authId": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"email": {
"type": "string",
"nullable": true
},
"status": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"AgencySourceFAQState": {
"enum": [
"Uncompressed",
"Compressed"
],
"type": "integer",
"format": "int32"
},
"AiCreateBotInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the new bot",
"nullable": true
},
"description": {
"type": "string",
"description": "The prompt to use to create the new bot",
"nullable": true
},
"category": {
"type": "string",
"description": "The source category of the new bot (GHL, WebHook, etc.)",
"nullable": true
},
"folderId": {
"type": "string",
"description": "The folder/group to place the newly created bot",
"nullable": true
}
},
"additionalProperties": false
},
"AnswerFAQRequest": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"answer": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"AnswerMultipleFAQsRequest": {
"type": "object",
"properties": {
"faQs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AnswerFAQRequest"
},
"nullable": true
}
},
"additionalProperties": false
},
"AnsweredFAQFollowUpRequest": {
"type": "object",
"properties": {
"faqId": {
"type": "string",
"description": "The answered FAQ.",
"nullable": true
},
"leadIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The leads to follow with.",
"nullable": true
}
},
"additionalProperties": false
},
"ApiKeyDTO": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"expiresAt": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"AttachSourceInput": {
"type": "object",
"properties": {
"tags": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContactTag"
},
"nullable": true
},
"channels": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"personaNameOverride": {
"type": "string",
"nullable": true
},
"enabled": {
"type": "boolean",
"nullable": true
}
},
"additionalProperties": false
},
"BalanceDto": {
"type": "object",
"properties": {
"balance": {
"type": "integer",
"description": "Balance in smallest unit of currency (cents in USD).",
"format": "int64"
},
"currency": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BilledUsageDto": {
"type": "object",
"properties": {
"startTime": {
"type": "string",
"format": "date-time"
},
"endTime": {
"type": "string",
"format": "date-time"
},
"responses": {
"type": "integer",
"format": "int32"
},
"libraryBytes": {
"type": "integer",
"format": "int64"
},
"users": {
"type": "integer",
"format": "int32"
},
"responseCost": {
"type": "integer",
"format": "int64"
},
"libraryCost": {
"type": "integer",
"format": "int64"
},
"userCost": {
"type": "integer",
"format": "int64"
}
},
"additionalProperties": false
},
"BillingOptionsDto": {
"type": "object",
"properties": {
"overBillingEnabled": {
"type": "boolean"
},
"usageBillingEnabled": {
"type": "boolean"
},
"autoRefillEnabled": {
"type": "boolean"
},
"topUpAmount": {
"type": "integer",
"format": "int64"
},
"refillThreshold": {
"type": "integer",
"format": "int64"
},
"currency": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"modifiedAt": {
"type": "string",
"nullable": true
},
"modifiedBy": {
"type": "string",
"nullable": true
},
"versions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVersionDto"
},
"nullable": true
},
"sources": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotSourceDto"
},
"nullable": true
},
"personaIds": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"favorited": {
"type": "boolean"
},
"locked": {
"type": "boolean"
},
"reschedulingEnabled": {
"type": "boolean"
},
"category": {
"type": "string",
"nullable": true
},
"folderId": {
"type": "string",
"nullable": true
},
"followUpActive": {
"type": "boolean"
},
"followUpSequences": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FollowUpSequenceDto"
},
"nullable": true
},
"smartFollowUp": {
"type": "boolean"
},
"followUpRepeat": {
"type": "boolean"
},
"followUpVarianceMinutes": {
"type": "integer",
"format": "int32"
},
"followUpExtraPrompt": {
"type": "string",
"nullable": true
},
"tools": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotToolDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"BotInstanceDto": {
"type": "object",
"properties": {
"botId": {
"type": "string",
"nullable": true
},
"botVersion": {
"type": "string",
"nullable": true
},
"followUpTimezoneKind": {
"type": "string",
"nullable": true
},
"followUpTimezone": {
"type": "string",
"nullable": true
},
"followUpTime": {
"type": "string",
"format": "date-time",
"nullable": true
},
"isSmartFollowUpTime": {
"type": "boolean"
}
},
"additionalProperties": false
},
"BotMetricAction": {
"type": "object",
"properties": {
"timestamp": {
"type": "string",
"format": "date-time"
},
"actionId": {
"type": "string",
"nullable": true
},
"leadId": {
"type": "string",
"nullable": true
},
"sourceId": {
"type": "string",
"nullable": true
},
"botId": {
"type": "string",
"nullable": true
},
"nodeId": {
"type": "integer",
"format": "int32"
},
"frontendNodeId": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotMetricActivity": {
"type": "object",
"properties": {
"activity": {
"type": "string",
"nullable": true
},
"data": {
"type": "string",
"nullable": true
},
"timeData": {
"type": "string",
"format": "date-time",
"nullable": true
}
},
"additionalProperties": false
},
"BotMetricAttachment": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The URL of the attachment",
"nullable": true
}
},
"additionalProperties": false
},
"BotMetricLog": {
"type": "object",
"properties": {
"timestamp": {
"type": "string",
"format": "date-time"
},
"botId": {
"type": "string",
"nullable": true
},
"messageId": {
"type": "string",
"nullable": true
},
"sourceId": {
"type": "string",
"nullable": true
},
"leadId": {
"type": "string",
"nullable": true
},
"actionId": {
"type": "string",
"nullable": true
},
"severity": {
"type": "integer",
"format": "int32",
"nullable": true
},
"message": {
"type": "string",
"nullable": true
},
"prompt": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricPrompt"
},
"nullable": true
},
"response": {
"type": "string",
"nullable": true
},
"promptTokens": {
"type": "integer",
"format": "int32",
"nullable": true
},
"completionTokens": {
"type": "integer",
"format": "int32",
"nullable": true
},
"provider": {
"type": "string",
"nullable": true
},
"model": {
"type": "string",
"nullable": true
},
"purpose": {
"type": "string",
"nullable": true
},
"body": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotMetricMessage": {
"type": "object",
"properties": {
"messageId": {
"type": "string",
"description": "The unique ID of the message",
"nullable": true
},
"sourceId": {
"type": "string",
"description": "The ID of the source",
"nullable": true
},
"leadId": {
"type": "string",
"description": "The ID of the lead",
"nullable": true
},
"botId": {
"type": "string",
"description": "The optional ID of the bot",
"nullable": true
},
"personaId": {
"type": "string",
"description": "The optional ID of the persona",
"nullable": true
},
"channel": {
"type": "string",
"description": "The optional channel of the message",
"nullable": true
},
"fromBot": {
"type": "boolean",
"description": "Whether the message was sent from the bot"
},
"direction": {
"type": "string",
"description": "The direction of the message (inbound or outbound)",
"nullable": true
},
"message": {
"type": "string",
"description": "The content of the message",
"nullable": true
},
"attachments": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricAttachment"
},
"description": "The list of attachments associated with the message",
"nullable": true
},
"timestamp": {
"type": "string",
"description": "The timestamp when the message was sent",
"format": "date-time"
},
"activities": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotMetricActivity"
},
"description": "The list of activities associated with the message",
"nullable": true
}
},
"additionalProperties": false
},
"BotMetricPrompt": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"nullable": true
},
"body": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotNodeGroup": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"order": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"BotNodePropertyCondition": {
"type": "object",
"properties": {
"key": {
"type": "string",
"nullable": true
},
"value": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotPersonaDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotSourceDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"category": {
"type": "string",
"nullable": true
},
"key": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContactTag"
},
"nullable": true
},
"channelList": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"personaNameOverride": {
"type": "string",
"nullable": true
},
"enabled": {
"type": "boolean"
}
},
"additionalProperties": false
},
"BotTemplateDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"level": {
"type": "string",
"nullable": true
},
"industry": {
"type": "string",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"videoUrl": {
"type": "string",
"nullable": true
},
"previewUrl": {
"type": "string",
"nullable": true
},
"tier": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotTestingRollbackInput": {
"type": "object",
"properties": {
"messageId": {
"type": "string",
"description": "The ID of the first message to delete. All subsequent messages will also be deleted.",
"nullable": true
}
},
"additionalProperties": false
},
"BotTestingRollbackOutput": {
"type": "object",
"properties": {
"deletedMessageIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The IDs of the deleted messages",
"nullable": true
},
"deletedActionIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The IDs of the deleted actions",
"nullable": true
}
},
"additionalProperties": false
},
"BotToolDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"type": {
"type": "string",
"nullable": true
},
"enabled": {
"type": "boolean"
},
"options": {
"$ref": "#/components/schemas/BotToolOptions"
}
},
"additionalProperties": false
},
"BotToolOptions": {
"type": "object",
"additionalProperties": false
},
"BotVariableDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"value": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotVariableUpdateInput": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"value": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"BotVersionDto": {
"type": "object",
"properties": {
"version": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"published": {
"type": "boolean"
},
"modifiedAt": {
"type": "string",
"format": "date-time"
},
"modifiedBy": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"ContactTag": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"approveDeny": {
"type": "boolean"
},
"id": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"CreateApiKeyInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"CreateApiKeyOutput": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"key": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"expiresAt": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"CreateBotInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the new bot",
"nullable": true
},
"templateId": {
"type": "string",
"description": "The template ID to use to create the new bot",
"nullable": true
},
"importKdl": {
"type": "string",
"description": "The KDL template to import into the new bot",
"nullable": true
},
"folderId": {
"type": "string",
"description": "The folder ID to place the new bot in",
"nullable": true
},
"category": {
"type": "string",
"description": "The category of the new bot",
"nullable": true
}
},
"additionalProperties": false
},
"CreatePersonaInput": {
"type": "object",
"properties": {
"personaName": {
"type": "string",
"description": "The name of the persona",
"nullable": true
},
"description": {
"type": "string",
"description": "The description of the persona",
"nullable": true
},
"voiceStyles": {
"type": "string",
"description": "The voice styles of the persona",
"nullable": true
},
"howToRespond": {
"type": "string",
"description": "The how to respond of the persona",
"nullable": true
},
"typoPercent": {
"type": "integer",
"description": "The typo percent of the persona",
"format": "int32"
},
"breakupLargeMessagePercent": {
"type": "integer",
"description": "The breakup large message percent of the persona",
"format": "int32"
},
"responseTime": {
"type": "string",
"description": "The response time of the persona",
"nullable": true
},
"responseDelay": {
"type": "integer",
"description": "The response delay of the persona",
"format": "int32"
},
"aiProviderPreferences": {
"type": "array",
"items": {
"type": "string"
},
"description": "The AI provider preferences of the persona",
"nullable": true
},
"color": {
"type": "string",
"description": "The color of the persona",
"nullable": true
},
"imageData": {
"type": "string",
"description": "The image data of the persona",
"nullable": true
}
},
"additionalProperties": false
},
"CreateRefillDto": {
"type": "object",
"properties": {
"amount": {
"type": "integer",
"format": "int64"
},
"currency": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"CreateSmartFAQRequest": {
"type": "object",
"properties": {
"sourceId": {
"type": "string",
"description": "The source ID of the FAQ",
"nullable": true
},
"question": {
"type": "string",
"description": "The question of the FAQ",
"nullable": true
},
"answer": {
"type": "string",
"description": "The answer of the FAQ",
"nullable": true
}
},
"additionalProperties": false
},
"DataTypeInfo": {
"type": "object",
"properties": {
"dataTypeName": {
"type": "string",
"nullable": true
},
"properties": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PropertyInfo"
},
"nullable": true
},
"displayName": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"DynamicOutputHandleInfo": {
"type": "object",
"properties": {
"linkedProperty": {
"type": "string",
"nullable": true
},
"labelPropertyName": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"ExportBotResponse": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The bot ID",
"nullable": true
},
"kdl": {
"type": "string",
"description": "The KDL for the bot",
"nullable": true
},
"version": {
"type": "string",
"description": "The version of the bot",
"nullable": true
}
},
"additionalProperties": false
},
"FileDto": {
"type": "object",
"properties": {
"fileId": {
"type": "string",
"nullable": true
},
"fileName": {
"type": "string",
"nullable": true
},
"lastModified": {
"type": "string",
"format": "date-time"
},
"fileType": {
"type": "string",
"nullable": true
},
"fileStatus": {
"type": "string",
"nullable": true
},
"fileSize": {
"type": "integer",
"format": "int64"
},
"estimatedFileSize": {
"type": "integer",
"format": "int64"
},
"sources": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FileSourceDto"
},
"nullable": true
},
"accountId": {
"type": "string",
"nullable": true
},
"uri": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"FileSourceDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"category": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"FollowUpSequenceDto": {
"type": "object",
"properties": {
"order": {
"type": "integer",
"format": "int32"
},
"duration": {
"type": "integer",
"format": "int32"
},
"unit": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"HierarchyInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The new name of the folder",
"nullable": true
}
},
"additionalProperties": false
},
"InstanceUpdateDto": {
"type": "object",
"properties": {
"followUpTime": {
"type": "string",
"description": "The follow up time of the instance",
"format": "date-time",
"nullable": true
}
},
"additionalProperties": false
},
"Invite": {
"type": "object",
"properties": {
"email": {
"type": "string",
"nullable": true
},
"role": {
"type": "string",
"nullable": true
},
"sourceIds": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
}
},
"additionalProperties": false
},
"InviteUserInput": {
"type": "object",
"properties": {
"invites": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Invite"
},
"nullable": true
}
},
"additionalProperties": false
},
"JsonNode": {
"type": "object",
"properties": {
"options": {
"$ref": "#/components/schemas/JsonNodeOptions"
},
"parent": {
"$ref": "#/components/schemas/JsonNode"
},
"root": {
"$ref": "#/components/schemas/JsonNode"
}
},
"additionalProperties": false
},
"JsonNodeOptions": {
"type": "object",
"properties": {
"propertyNameCaseInsensitive": {
"type": "boolean"
}
},
"additionalProperties": false
},
"JsonValue": {
"type": "object",
"properties": {
"options": {
"$ref": "#/components/schemas/JsonNodeOptions"
},
"parent": {
"$ref": "#/components/schemas/JsonNode"
},
"root": {
"$ref": "#/components/schemas/JsonNode"
}
},
"additionalProperties": false
},
"LeadDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"contactId": {
"type": "string",
"nullable": true
},
"lastMessageTime": {
"type": "string",
"format": "date-time",
"nullable": true
},
"lastMessage": {
"type": "string",
"nullable": true
},
"lastMessageDirection": {
"type": "string",
"nullable": true
},
"lastMessageBotId": {
"type": "string",
"nullable": true
},
"mostRecentFailureReason": {
"type": "string",
"nullable": true
},
"mimicSourceId": {
"type": "string",
"nullable": true
},
"source": {
"$ref": "#/components/schemas/LeadSourceDto"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"fields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeadFieldDto"
},
"nullable": true
},
"instances": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotInstanceDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"LeadDtoPaginated": {
"type": "object",
"properties": {
"total": {
"type": "integer",
"format": "int32"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeadDto"
},
"nullable": true
},
"page": {
"type": "integer",
"format": "int32"
},
"pageSize": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"LeadFieldDto": {
"type": "object",
"properties": {
"field": {
"type": "string",
"nullable": true
},
"value": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"LeadFieldUpdateDto": {
"type": "object",
"properties": {
"field": {
"type": "string",
"nullable": true
},
"value": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"LeadSourceDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"LeadUpdateDto": {
"type": "object",
"properties": {
"fields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeadFieldUpdateDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"LeaderboardResponse": {
"type": "object",
"properties": {
"agencyName": {
"type": "string",
"description": "The name of the agency",
"nullable": true
},
"count": {
"type": "integer",
"description": "The number of the metric",
"format": "int32"
}
},
"additionalProperties": false
},
"ListHierarchyResult": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the folder",
"nullable": true
},
"name": {
"type": "string",
"description": "The name of the folder",
"nullable": true
},
"bots": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of bots in the folder",
"nullable": true
},
"personas": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of personas in the folder",
"nullable": true
},
"children": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of children folders",
"nullable": true
}
},
"additionalProperties": false
},
"ListLeadDto": {
"type": "object",
"properties": {
"leads": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LeadDto"
},
"nullable": true
},
"total": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"LiveDemoCreateDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The friendly-name of the live demo.",
"nullable": true
},
"mimicSourceId": {
"type": "string",
"description": "The source ID to mimic when conversing.",
"nullable": true
},
"active": {
"type": "boolean",
"description": "Whether or not this demo is active."
}
},
"additionalProperties": false
},
"LiveDemoDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"key": {
"type": "string",
"nullable": true
},
"organizationId": {
"type": "string",
"nullable": true
},
"active": {
"type": "boolean"
},
"mimicSourceId": {
"type": "string",
"nullable": true
},
"sourceVariables": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotVariableDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"LiveDemoMessageInput": {
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "The message to send",
"nullable": true
}
},
"additionalProperties": false
},
"LiveDemoSessionDto": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "The key of the live demo used to create this session",
"nullable": true
},
"sessionLeadId": {
"type": "string",
"description": "The lead ID of the session",
"nullable": true
}
},
"additionalProperties": false
},
"MessageFeedbackRequest": {
"type": "object",
"properties": {
"messageId": {
"type": "string",
"nullable": true
},
"leadId": {
"type": "string",
"nullable": true
},
"reasons": {
"type": "string",
"nullable": true
},
"liked": {
"type": "boolean",
"nullable": true
}
},
"additionalProperties": false
},
"MessageFeedbackResponse": {
"type": "object",
"properties": {
"feedbackMessageIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of message IDs with feedback",
"nullable": true
}
},
"additionalProperties": false
},
"MessageLikesResponse": {
"type": "object",
"properties": {
"likedMessageIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The list of message IDs with likes",
"nullable": true
}
},
"additionalProperties": false
},
"MessageReason": {
"type": "object",
"properties": {
"reason": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"NodeInfo": {
"type": "object",
"properties": {
"className": {
"type": "string",
"nullable": true
},
"displayName": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"group": {
"type": "string",
"nullable": true
},
"properties": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PropertyInfo"
},
"nullable": true
},
"outputs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OutputInfo"
},
"nullable": true
},
"outputHandles": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OutputHandleInfo"
},
"nullable": true
},
"dynamicHandles": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DynamicOutputHandleInfo"
},
"nullable": true
},
"hasInputHandle": {
"type": "boolean"
},
"hasDynamicVariables": {
"type": "boolean"
},
"helpUrl": {
"type": "string",
"nullable": true
},
"requiresPaid": {
"type": "boolean"
},
"order": {
"type": "integer",
"format": "int32"
},
"hidden": {
"type": "boolean"
}
},
"additionalProperties": false
},
"NodeInformation": {
"type": "object",
"properties": {
"dataTypes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DataTypeInfo"
},
"nullable": true
},
"atomicNodes": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NodeInfo"
},
"nullable": true
},
"groups": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotNodeGroup"
},
"nullable": true
},
"tools": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ToolInfo"
},
"nullable": true
}
},
"additionalProperties": false
},
"NotificationDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"kind": {
"type": "string",
"nullable": true
},
"title": {
"type": "string",
"nullable": true
},
"body": {
"type": "string",
"nullable": true
},
"viewed": {
"type": "boolean"
},
"timestamp": {
"type": "string",
"format": "date-time"
},
"metadata": {
"$ref": "#/components/schemas/_Metadata"
}
},
"additionalProperties": false
},
"NotificationForwardingDto": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "Whether notification forwarding is enabled"
},
"channelsEnabled": {
"type": "array",
"items": {
"type": "string"
},
"description": "The channels enabled for notification forwarding",
"nullable": true
},
"webhookEndpoint": {
"type": "string",
"description": "The webhook endpoint for notification forwarding",
"nullable": true
}
},
"additionalProperties": false
},
"NotificationUpdateDto": {
"type": "object",
"properties": {
"viewed": {
"type": "boolean",
"description": "Whether the notification has been viewed"
}
},
"additionalProperties": false
},
"OutputHandleInfo": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"label": {
"type": "string",
"nullable": true
},
"color": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"OutputInfo": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"displayName": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"PersonaDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"agencyId": {
"type": "string",
"nullable": true
},
"personaName": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"color": {
"type": "string",
"nullable": true
},
"imageUri": {
"type": "string",
"nullable": true
},
"voiceStyles": {
"type": "string",
"nullable": true
},
"howToRespond": {
"type": "string",
"nullable": true
},
"typoPercent": {
"type": "integer",
"format": "int32"
},
"breakupLargeMessagePercent": {
"type": "integer",
"format": "int32"
},
"responseTime": {
"type": "string",
"nullable": true
},
"responseDelay": {
"type": "integer",
"format": "int32"
},
"modifiedAt": {
"type": "string",
"nullable": true
},
"modifiedBy": {
"type": "string",
"nullable": true
},
"aiProviderPreferences": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"folderId": {
"type": "string",
"nullable": true
},
"botIds": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"bots": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotPersonaDto"
},
"nullable": true
},
"favorited": {
"type": "boolean"
},
"default": {
"type": "boolean"
}
},
"additionalProperties": false
},
"ProblemDetails": {
"type": "object",
"properties": {
"type": {
"type": "string",
"nullable": true
},
"title": {
"type": "string",
"nullable": true
},
"status": {
"type": "integer",
"format": "int32",
"nullable": true
},
"detail": {
"type": "string",
"nullable": true
},
"instance": {
"type": "string",
"nullable": true
}
},
"additionalProperties": { }
},
"PropertyInfo": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"type": {
"type": "string",
"nullable": true
},
"enumValues": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"displayName": {
"type": "string",
"nullable": true
},
"defaultValue": {
"type": "string",
"nullable": true
},
"group": {
"type": "string",
"nullable": true
},
"conditions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BotNodePropertyCondition"
},
"nullable": true
}
},
"additionalProperties": false
},
"PublishBotResponse": {
"type": "object",
"properties": {
"version": {
"type": "string",
"nullable": true
},
"message": {
"$ref": "#/components/schemas/JsonValue"
}
},
"additionalProperties": false
},
"ReBillingDto": {
"type": "object",
"properties": {
"reBillingConfigured": {
"type": "boolean"
},
"responseUnitCost": {
"type": "string",
"nullable": true
},
"storageUnitCost": {
"type": "string",
"nullable": true
},
"userUnitCost": {
"type": "string",
"nullable": true
},
"tokenMultiplier": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"ReBillingUpdateInput": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"nullable": true
},
"responseCost": {
"type": "string",
"nullable": true
},
"storageCost": {
"type": "string",
"nullable": true
},
"userCost": {
"type": "string",
"nullable": true
},
"tokenMultiplier": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SaveBotInput": {
"type": "object",
"properties": {
"botSteps": { }
},
"additionalProperties": false
},
"SaveBotResponse": {
"type": "object",
"properties": {
"version": {
"type": "string",
"nullable": true
},
"invalidPaths": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"message": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SearchQueryInput": {
"type": "object",
"properties": {
"offset": {
"type": "integer",
"description": "The offset of the search results.",
"format": "int32",
"nullable": true
},
"count": {
"type": "integer",
"description": "The count of the search results.",
"format": "int32",
"nullable": true
},
"search": {
"type": "string",
"description": "The search query.",
"nullable": true
},
"sourceIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The source IDs.",
"nullable": true
},
"channels": {
"type": "array",
"items": {
"type": "string"
},
"description": "The channel IDs.",
"nullable": true
},
"botIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The bot IDs.",
"nullable": true
},
"personaIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "The persona IDs.",
"nullable": true
},
"minimumResponses": {
"type": "integer",
"description": "The minimum number of responses.",
"format": "int32",
"nullable": true
},
"lastMessageDirection": {
"type": "string",
"description": "The last message direction.",
"nullable": true
},
"followUpScheduled": {
"type": "boolean",
"description": "Whether the follow up is scheduled.",
"nullable": true
}
},
"additionalProperties": false
},
"SmartFAQDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"agencyId": {
"type": "string",
"nullable": true
},
"sourceId": {
"type": "string",
"nullable": true
},
"question": {
"type": "string",
"nullable": true
},
"answer": {
"type": "string",
"nullable": true
},
"leadIds": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"state": {
"$ref": "#/components/schemas/AgencySourceFAQState"
}
},
"additionalProperties": false
},
"SourceAvailabilityDto": {
"type": "object",
"properties": {
"dayOfWeekUtc": {
"type": "string",
"nullable": true
},
"startTimeUtc": {
"type": "string",
"nullable": true
},
"duration": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SourceBotDto": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"botName": {
"type": "string",
"nullable": true
},
"tags": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ContactTag"
},
"nullable": true
},
"channels": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"personaNameOverride": {
"type": "string",
"nullable": true
},
"enabled": {
"type": "boolean"
}
},
"additionalProperties": false
},
"SourceCalendarDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"id": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SourceChannelDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"id": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SourceDoNotRespondWindowDto": {
"type": "object",
"properties": {
"start": {
"type": "string",
"format": "date-time"
},
"end": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"SourceDto": {
"type": "object",
"properties": {
"agencyId": {
"type": "string",
"nullable": true
},
"sourceId": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"category": {
"type": "string",
"nullable": true
},
"key": {
"type": "string",
"nullable": true
},
"accessToken": {
"type": "string",
"nullable": true
},
"address": {
"type": "string",
"nullable": true
},
"connected": {
"type": "boolean"
},
"autoShutoff": {
"type": "boolean"
},
"gracefulGoodbye": {
"type": "boolean"
},
"bots": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceBotDto"
},
"nullable": true
},
"accountsWithAccess": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"isAvailabilityContactTimezone": {
"type": "boolean"
},
"respondWindows": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceAvailabilityDto"
},
"nullable": true
},
"doNotRespondWindows": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceDoNotRespondWindowDto"
},
"nullable": true
},
"summarizeAttachments": {
"type": "boolean"
},
"respondToReactions": {
"type": "boolean"
},
"markConversationAsUnread": {
"type": "boolean"
},
"webhookCallback": {
"type": "string",
"nullable": true
},
"wallet": {
"$ref": "#/components/schemas/SourceWalletDto"
}
},
"additionalProperties": false
},
"SourceDtoPaginated": {
"type": "object",
"properties": {
"total": {
"type": "integer",
"format": "int32"
},
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceDto"
},
"nullable": true
},
"page": {
"type": "integer",
"format": "int32"
},
"pageSize": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"SourceFieldCollectionDto": {
"type": "object",
"properties": {
"contact": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceFieldDto"
},
"nullable": true
},
"location": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceFieldDto"
},
"nullable": true
},
"customValue": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceFieldDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"SourceFieldDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"fieldKey": {
"type": "string",
"nullable": true
},
"dataType": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SourceTagDto": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"id": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"SourceWalletDto": {
"type": "object",
"properties": {
"reBilling": {
"type": "boolean"
},
"autoRefill": {
"type": "boolean"
},
"topUpAmount": {
"type": "integer",
"format": "int32"
},
"refillThreshold": {
"type": "integer",
"format": "int32"
},
"stripeCustomerId": {
"type": "string",
"nullable": true
},
"currency": {
"type": "string",
"nullable": true
},
"responseUnitCostOverride": {
"type": "string",
"nullable": true
},
"storageUnitCostOverride": {
"type": "string",
"nullable": true
},
"userUnitCostOverride": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"TestSession": {
"type": "object",
"properties": {
"leadId": {
"type": "string",
"description": "The lead ID of the test session",
"nullable": true
},
"sourceId": {
"type": "string",
"description": "The source ID of the test session",
"nullable": true
}
},
"additionalProperties": false
},
"TestSessionMessageInput": {
"type": "object",
"properties": {
"leadId": {
"type": "string",
"description": "The lead ID",
"nullable": true
},
"message": {
"type": "string",
"description": "The message to send",
"nullable": true
}
},
"additionalProperties": false
},
"ToolInfo": {
"type": "object",
"properties": {
"className": {
"type": "string",
"nullable": true
},
"displayName": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"properties": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PropertyInfo"
},
"nullable": true
},
"helpUrl": {
"type": "string",
"nullable": true
},
"hidden": {
"type": "boolean"
}
},
"additionalProperties": false
},
"ToolInputDto": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "The type of the tool",
"nullable": true
},
"enabled": {
"type": "boolean",
"description": "Whether the tool is enabled"
},
"options": {
"description": "The options for the tool"
}
},
"additionalProperties": false
},
"TransactionDto": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"status": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"amount": {
"type": "integer",
"format": "int64"
},
"currency": {
"type": "string",
"nullable": true
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"receiptUrl": {
"type": "string",
"nullable": true
},
"usage": {
"$ref": "#/components/schemas/BilledUsageDto"
}
},
"additionalProperties": false
},
"UpdateBillingConfigInput": {
"type": "object",
"properties": {
"overBillingEnabled": {
"type": "boolean",
"nullable": true
},
"autoRefillEnabled": {
"type": "boolean",
"nullable": true
},
"topUpAmount": {
"type": "integer",
"format": "int64",
"nullable": true
},
"refillThreshold": {
"type": "integer",
"format": "int64",
"nullable": true
}
},
"additionalProperties": false
},
"UpdateBotErrorResponse": {
"type": "object",
"properties": {
"message": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"UpdateBotInput": {
"type": "object",
"properties": {
"favorite": {
"type": "boolean",
"description": "Whether the bot is favorited",
"nullable": true
},
"trash": {
"type": "boolean",
"description": "Whether the bot is trashed",
"nullable": true
},
"locked": {
"type": "boolean",
"description": "Whether the bot is locked",
"nullable": true
},
"rescheduling": {
"type": "boolean",
"description": "Whether the bot has conversation rescheduling enabled",
"nullable": true
},
"name": {
"type": "string",
"description": "The name of the bot",
"nullable": true
},
"folderId": {
"type": "string",
"description": "The folder ID of the bot",
"nullable": true
},
"category": {
"type": "string",
"description": "The category of the bot",
"nullable": true
},
"followUpActive": {
"type": "boolean",
"description": "Whether the bot does follow-ups",
"nullable": true
},
"followUpSequences": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FollowUpSequenceDto"
},
"description": "The follow-up sequences of the bot",
"nullable": true
},
"smartFollowUp": {
"type": "boolean",
"description": "Whether the bot does smart follow-ups",
"nullable": true
},
"followUpRepeat": {
"type": "boolean",
"description": "Whether the bot repeats the last follow-up sequence",
"nullable": true
},
"followUpVarianceMinutes": {
"type": "integer",
"description": "The variance minutes for the follow-ups",
"format": "int32",
"nullable": true
},
"followUpExtraPrompt": {
"type": "string",
"description": "The extra prompt for the follow-ups",
"nullable": true
}
},
"additionalProperties": false
},
"UpdatePersonaInput": {
"type": "object",
"properties": {
"personaName": {
"type": "string",
"description": "The name of the persona",
"nullable": true
},
"description": {
"type": "string",
"description": "The description of the persona",
"nullable": true
},
"voiceStyles": {
"type": "string",
"description": "The voice styles of the persona",
"nullable": true
},
"howToRespond": {
"type": "string",
"description": "The how to respond of the persona",
"nullable": true
},
"typoPercent": {
"type": "integer",
"description": "The typo percent of the persona",
"format": "int32",
"nullable": true
},
"breakupLargeMessagePercent": {
"type": "integer",
"description": "The breakup large message percent of the persona",
"format": "int32",
"nullable": true
},
"responseTime": {
"type": "string",
"description": "The response time of the persona",
"nullable": true
},
"responseDelay": {
"type": "integer",
"description": "The response delay of the persona",
"format": "int32",
"nullable": true
},
"aiProviderPreferences": {
"type": "array",
"items": {
"type": "string"
},
"description": "The AI provider preferences of the persona",
"nullable": true
},
"folderId": {
"type": "string",
"description": "The folder ID of the persona",
"nullable": true
},
"favorited": {
"type": "boolean",
"description": "Whether the persona is favorited",
"nullable": true
},
"trash": {
"type": "boolean",
"description": "Whether the persona is trashed",
"nullable": true
},
"default": {
"type": "boolean",
"description": "Whether the persona is default",
"nullable": true
},
"color": {
"type": "string",
"description": "The color of the persona",
"nullable": true
},
"imageData": {
"type": "string",
"description": "The image data of the persona",
"nullable": true
}
},
"additionalProperties": false
},
"UpdateSessionDto": {
"type": "object",
"properties": {
"sessionId": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"UpdateSessionInput": {
"type": "object",
"properties": {
"mimicSourceId": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"UpdateSourceInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"autoShutoff": {
"type": "boolean",
"nullable": true
},
"gracefulGoodbye": {
"type": "boolean",
"nullable": true
},
"isAvailabilityContactTimezone": {
"type": "boolean",
"nullable": true
},
"respondWindows": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceAvailabilityDto"
},
"nullable": true
},
"doNotRespondWindows": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SourceDoNotRespondWindowDto"
},
"nullable": true
},
"summarizeAttachments": {
"type": "boolean",
"nullable": true
},
"respondToReactions": {
"type": "boolean",
"nullable": true
},
"markConversationsAsUnread": {
"type": "boolean",
"nullable": true
},
"wallet": {
"$ref": "#/components/schemas/UpdateSourceWalletInput"
},
"accountsWithAccess": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"webhookCallback": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"UpdateSourceWalletInput": {
"type": "object",
"properties": {
"reBilling": {
"type": "boolean",
"nullable": true
},
"autoRefill": {
"type": "boolean",
"nullable": true
},
"topUpAmount": {
"type": "integer",
"format": "int32",
"nullable": true
},
"refillThreshold": {
"type": "integer",
"format": "int32",
"nullable": true
},
"responseUnitCostOverride": {
"type": "string",
"nullable": true
},
"storageUnitCostOverride": {
"type": "string",
"nullable": true
},
"userUnitCostOverride": {
"type": "string",
"nullable": true
},
"stripeCustomerId": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"UpdateVersionInput": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the bot version",
"nullable": true
},
"importKdl": {
"type": "string",
"description": "The KDL import for the bot version",
"nullable": true
}
},
"additionalProperties": false
},
"UploadWebscrapeToSourceInput": {
"type": "object",
"properties": {
"scrapeUrl": {
"type": "string",
"nullable": true
},
"maxBreadth": {
"type": "integer",
"format": "int32"
},
"maxDepth": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"WebscrapePageDto": {
"type": "object",
"properties": {
"url": {
"type": "string",
"nullable": true
},
"enabled": {
"type": "boolean"
}
},
"additionalProperties": false
},
"WebscrapePageUpdateDto": {
"type": "object",
"properties": {
"pages": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WebscrapePageDto"
},
"nullable": true
}
},
"additionalProperties": false
},
"_Metadata": {
"type": "object",
"properties": {
"aiProviderId": {
"type": "string",
"nullable": true
},
"sourceId": {
"type": "string",
"nullable": true
},
"botId": {
"type": "string",
"nullable": true
},
"rawAiError": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
}
},
"securitySchemes": {
"Key": {
"type": "apiKey",
"description": "CloseBot API Key Authorization",
"name": "X-CB-KEY",
"in": "header"
}
}
},
"security": [
{
"Key": [ ]
}
]
}