StartAgentCall
Authorizations:
Request Body schema: application/jsonrequired
| toPhoneNumber required | string |
| fromPhoneNumber | string |
| objectives required | Array of strings |
| userId | number <double> |
object (AgentCallPersonality) Interface representing agent call personality | |
| localization | string (EmployeePersonalityLocalization) Enum: "CL" "MX" "CO" "PE" "US" |
| constraints | Array of strings |
object (ContactInfo) Interface representing contact information | |
| knowledgeBase | string |
| taskSteps | Array of strings |
| maxDurationSeconds | number <double> |
| silenceTimeoutSeconds | number <double> |
| customData | object (Dictionary_unknown_) A TSOA-compatible dictionary type that replaces Record<string, T>. This type is used to ensure proper runtime validation with TSOA. |
| provider | string Value: "vapi" |
object (VapiProviderConfig) Interface representing Vapi-specific configurations |
Responses
Request samples
- Payload
{- "toPhoneNumber": "string",
- "fromPhoneNumber": "string",
- "objectives": [
- "string"
], - "userId": 0.1,
- "personality": {
- "name": "string",
- "communicationStyle": "professional",
- "customTraits": "string"
}, - "localization": "CL",
- "constraints": [
- "string"
], - "contactInfo": {
- "firstName": "string",
- "lastName": "string",
- "company": "string",
- "additionalInfo": {
- "property1": "string",
- "property2": "string"
}
}, - "knowledgeBase": "string",
- "taskSteps": [
- "string"
], - "maxDurationSeconds": 0.1,
- "silenceTimeoutSeconds": 0.1,
- "customData": {
- "property1": null,
- "property2": null
}, - "provider": "vapi",
- "providerConfig": {
- "model": {
- "maxTokens": 0.1,
- "temperature": 0.1,
- "model": {
- "provider": "openai",
- "model": "gpt-4o"
}
}, - "voice": {
- "provider": "11labs",
- "voiceId": "string",
- "model": "string",
- "speed": 0.1,
- "stability": 0.1,
- "style": 0.1,
- "optimizeStreamingLatency": 0.1
}, - "transcriber": {
- "provider": "deepgram",
- "model": "nova-2",
- "localization": "CL",
- "confidenceThreshold": 0.1,
- "keywords": [
- "string"
]
}
}
}Response samples
- 200
- 400
- 401
- 403
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "userId": 0.1,
- "contactId": 0.1,
- "opportunityId": 0.1,
- "analysisConfigId": 0.1,
- "teamId": 0.1,
- "from": "string",
- "to": "string",
- "redirectedTo": "string",
- "duration": 0.1,
- "direction": "string",
- "status": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "metadata": null,
- "customData": null,
- "agentScore": 0.1,
- "category": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "lastUpdateSequence": 0.1
}GetTasks
List tasks with support for filtering, sorting, and pagination.
Returns a paginated list of tasks. Supports filtering by status, due dates, conversation, assignee, and other criteria.
Example usage: GET /api/v1/tasks?status=pending&limit=20&pageToken=Xde34567890
Authorizations:
query Parameters
| limit | number <double> |
| pageToken | string |
| status | string Enum: "completed" "cancelled" "scheduled" "overdue" |
| dueBefore | string <date-time> |
| dueAfter | string <date-time> |
| conversationId | number <double> |
| assignedToType | string Enum: "user" "ai_employee" |
| assignedToId | string |
Responses
Response samples
- 200
- 401
- 403
- 500
{- "nextPageToken": "string",
- "totalCount": 0.1,
- "items": [
- {
- "id": "string",
- "tenantId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "context": {
- "conversationId": 0.1
}, - "objective": "string",
- "createdBy": {
- "id": "string",
- "type": "user"
}, - "assignedTo": {
- "id": "string",
- "type": "user"
}, - "publishedAt": "2019-08-24T14:15:22Z",
- "dueDate": "2019-08-24T14:15:22Z",
- "completedAt": "2019-08-24T14:15:22Z",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "cancellationReason": "string",
- "status": "completed"
}
]
}CreateTask
Create a new task.
Creates a new task with the specified details. Tasks can be assigned to users and can include due dates, descriptions, and other metadata.
Example usage: POST /api/v1/tasks { "title": "Follow up with client", "objective": "Send proposal to client", "dueDate": "2024-02-15T10:00:00Z", "assignedTo": { "type": "user", "id": "123" } }
Authorizations:
Request Body schema: application/jsonrequired
required | object |
| objective required | string |
required | object |
required | object |
| dueDate | string or null <date-time> |
| status | string Enum: "completed" "cancelled" "scheduled" "overdue" |
Responses
Request samples
- Payload
{- "context": {
- "conversationId": 0.1
}, - "objective": "string",
- "createdBy": {
- "id": "string",
- "type": "user"
}, - "assignedTo": {
- "id": "string",
- "type": "user"
}, - "dueDate": "2019-08-24T14:15:22Z",
- "status": "completed"
}Response samples
- 200
- 401
- 403
- 500
{- "id": "string",
- "tenantId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "context": {
- "conversationId": 0.1
}, - "objective": "string",
- "createdBy": {
- "id": "string",
- "type": "user"
}, - "assignedTo": {
- "id": "string",
- "type": "user"
}, - "publishedAt": "2019-08-24T14:15:22Z",
- "dueDate": "2019-08-24T14:15:22Z",
- "completedAt": "2019-08-24T14:15:22Z",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "cancellationReason": "string",
- "status": "completed"
}GetTask
Get a task by ID.
Retrieves a single task by its unique identifier, including all task details and assignment information.
Authorizations:
path Parameters
| taskId required | string |
Responses
Response samples
- 200
- 401
- 403
- 404
- 500
{- "id": "string",
- "tenantId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "context": {
- "conversationId": 0.1
}, - "objective": "string",
- "createdBy": {
- "id": "string",
- "type": "user"
}, - "assignedTo": {
- "id": "string",
- "type": "user"
}, - "publishedAt": "2019-08-24T14:15:22Z",
- "dueDate": "2019-08-24T14:15:22Z",
- "completedAt": "2019-08-24T14:15:22Z",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "cancellationReason": "string",
- "status": "completed"
}UpdateTask
Update an existing task.
Updates the details of an existing task. Only fields provided in the request body will be updated. This includes status changes, assignment updates, due date modifications, etc.
Example usage: PUT /api/v1/tasks/task_123 { "status": "completed", "objective": "Updated task objective" }
Authorizations:
path Parameters
| taskId required | string |
Request Body schema: application/jsonrequired
| status | string Enum: "completed" "cancelled" "scheduled" "overdue" |
object | |
| objective | string |
object | |
| publishedAt | string or null <date-time> |
| dueDate | string or null <date-time> |
| completedAt | string or null <date-time> |
| cancelledAt | string or null <date-time> |
| cancellationReason | string or null |
Responses
Request samples
- Payload
{- "status": "completed",
- "context": {
- "conversationId": 0.1
}, - "objective": "string",
- "assignedTo": {
- "id": "string",
- "type": "user"
}, - "publishedAt": "2019-08-24T14:15:22Z",
- "dueDate": "2019-08-24T14:15:22Z",
- "completedAt": "2019-08-24T14:15:22Z",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "cancellationReason": "string"
}Response samples
- 200
- 401
- 403
- 404
- 500
{- "id": "string",
- "tenantId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "context": {
- "conversationId": 0.1
}, - "objective": "string",
- "createdBy": {
- "id": "string",
- "type": "user"
}, - "assignedTo": {
- "id": "string",
- "type": "user"
}, - "publishedAt": "2019-08-24T14:15:22Z",
- "dueDate": "2019-08-24T14:15:22Z",
- "completedAt": "2019-08-24T14:15:22Z",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "cancellationReason": "string",
- "status": "completed"
}DeleteTask
Delete a task by ID.
Permanently deletes a task and all associated data. This action cannot be undone.
Authorizations:
path Parameters
| taskId required | string |
Responses
Response samples
- 200
- 401
- 403
- 404
- 500
{- "id": "string",
- "tenantId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "context": {
- "conversationId": 0.1
}, - "objective": "string",
- "createdBy": {
- "id": "string",
- "type": "user"
}, - "assignedTo": {
- "id": "string",
- "type": "user"
}, - "publishedAt": "2019-08-24T14:15:22Z",
- "dueDate": "2019-08-24T14:15:22Z",
- "completedAt": "2019-08-24T14:15:22Z",
- "cancelledAt": "2019-08-24T14:15:22Z",
- "cancellationReason": "string",
- "status": "completed"
}Response samples
- 200
- 401
- 403
- 404
{- "id": 0.1,
- "tenantId": "string",
- "callId": 0.1,
- "providerId": "string",
- "providerName": "string",
- "callProviderId": "string",
- "callProviderName": "string",
- "url": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "duration": 0.1,
- "dualChannel": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}LoadRecording
Authorizations:
Request Body schema: application/jsonrequired
| userId required | number <double> |
| url required | string |
| callTo | string |
| callFrom | string |
| callDirection | string (CallDirection) Enum: "outgoing" "incoming" |
| callStartTime | string |
Responses
Request samples
- Payload
{- "userId": 0.1,
- "url": "string",
- "callTo": "string",
- "callFrom": "string",
- "callDirection": "outgoing",
- "callStartTime": "string"
}Response samples
- 401
- 403
{- "code": 0.1,
- "error": "string",
- "message": "string",
- "details": {
- "property1": null,
- "property2": null
}
}BulkCreate
Create multiple conversations in a single request.
This endpoint allows you to create multiple conversations at once. Each conversation in the batch will be validated before processing. The response includes details about any validation issues encountered during processing.
If some conversations fail validation, the valid ones will still be processed.
Authorizations:
Request Body schema: application/jsonrequired
required | Array of BulkSingleConversationCreateParams (object) or any Array of conversations to process, allowing unknown | ||||||||||||||||
Array Any of
| |||||||||||||||||
Responses
Request samples
- Payload
{- "conversations": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "userId": 0.1,
- "funnelId": 0.1,
- "funnelStatusId": 0.1,
- "archivedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "contactId": 0.1,
- "contact": {
- "firstName": "string",
- "lastName": "string",
- "phones": [
- "string"
], - "emails": [
- "string"
], - "nationalId": "string",
- "companyPosition": "string",
- "customFields": {
- "property1": null,
- "property2": null
}, - "userId": 0.1
}
}
]
}Response samples
- 200
- 400
- 401
- 403
- 500
{- "message": "string",
- "operationId": "string",
- "report": {
- "itemsIssues": [
- {
- "index": 0.1,
- "itemId": 0.1,
- "errors": [
- {
- "field": "string",
- "message": "string",
- "code": "REQUIRED_FIELD",
- "context": {
- "property1": null,
- "property2": null
}
}
], - "warnings": [
- {
- "field": "string",
- "message": "string",
- "code": "REQUIRED_FIELD",
- "context": {
- "property1": null,
- "property2": null
}
}
], - "existingEntities": {
- "property1": null,
- "property2": null
}
}
], - "batchErrors": [
- {
- "field": "string",
- "message": "string",
- "code": "REQUIRED_FIELD",
- "context": {
- "property1": null,
- "property2": null
}
}
], - "counts": {
- "successful": 0.1,
- "warnings": 0.1,
- "duplicates": 0.1,
- "errors": 0.1,
- "total": 0.1
}
}
}BulkUpdate
Update multiple conversations in a single request.
This endpoint allows you to update multiple existing conversations at once. Each conversation update in the batch will be validated before processing. The response includes details about any validation issues encountered during processing.
You must provide the ID for each conversation you want to update. If some conversations fail validation, the valid ones will still be processed.
Authorizations:
Request Body schema: application/jsonrequired
required | Array of BulkSingleConversationUpdateParams (object) or any Array of conversations to process, allowing unknown | ||||||||||||||
Array Any of
| |||||||||||||||
Responses
Request samples
- Payload
{- "conversations": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "userId": 0.1,
- "funnelStatusId": 0.1,
- "archivedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "id": 0.1,
- "contact": {
- "firstName": "string",
- "lastName": "string",
- "phones": [
- "string"
], - "emails": [
- "string"
], - "nationalId": "string",
- "companyPosition": "string",
- "customFields": {
- "property1": null,
- "property2": null
}, - "userId": 0.1,
- "id": 0.1
}
}
]
}Response samples
- 200
- 400
- 401
- 403
- 500
{- "message": "string",
- "operationId": "string",
- "report": {
- "itemsIssues": [
- {
- "index": 0.1,
- "itemId": 0.1,
- "errors": [
- {
- "field": "string",
- "message": "string",
- "code": "REQUIRED_FIELD",
- "context": {
- "property1": null,
- "property2": null
}
}
], - "warnings": [
- {
- "field": "string",
- "message": "string",
- "code": "REQUIRED_FIELD",
- "context": {
- "property1": null,
- "property2": null
}
}
], - "existingEntities": {
- "property1": null,
- "property2": null
}
}
], - "batchErrors": [
- {
- "field": "string",
- "message": "string",
- "code": "REQUIRED_FIELD",
- "context": {
- "property1": null,
- "property2": null
}
}
], - "counts": {
- "successful": 0.1,
- "warnings": 0.1,
- "duplicates": 0.1,
- "errors": 0.1,
- "total": 0.1
}
}
}Create
Create a single conversation.
This endpoint allows you to create a single conversation and returns the created conversation immediately with all associated data including contact information.
Use this endpoint when you need the created conversation immediately for subsequent operations.
Either contactId or contact information must be provided. If contact is provided,
a new contact will be created or an existing contact will be matched based on the addresses and updated.
Authorizations:
Request Body schema: application/jsonrequired
| createdAt | string <date-time> |
| userId | number or null <double> Reference to the user involved in the conversation |
| funnelId required | number <double> Reference to the funnel this conversation belongs to |
| funnelStatusId | number or null <double> Optional reference to the current funnel status |
| archivedAt | string or null <date-time> Optional timestamp when the conversation was archived |
| customFields | object (Dictionary_unknown_) A TSOA-compatible dictionary type that replaces Record<string, T>. This type is used to ensure proper runtime validation with TSOA. |
| contactId | number <double> Optional explicit contact to attach; bypasses address-based disambiguation |
object (BulkConversationContactCreateParams) Contact information for creating a contact within a bulk conversation request |
Responses
Request samples
- Payload
{- "createdAt": "2019-08-24T14:15:22Z",
- "userId": 0.1,
- "funnelId": 0.1,
- "funnelStatusId": 0.1,
- "archivedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "contactId": 0.1,
- "contact": {
- "firstName": "string",
- "lastName": "string",
- "phones": [
- "string"
], - "emails": [
- "string"
], - "nationalId": "string",
- "companyPosition": "string",
- "customFields": {
- "property1": null,
- "property2": null
}, - "userId": 0.1
}
}Response samples
- 200
- 400
- 401
- 403
- 500
{- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "userId": 0.1,
- "funnelId": 0.1,
- "funnelStatusId": 0.1,
- "archivedAt": "2019-08-24T14:15:22Z",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "channelSessions": [
- {
- "id": 0.1,
- "tenantId": "string",
- "funnelConversationId": 0.1,
- "funnelAddressId": 0.1,
- "contactAddressId": 0.1,
- "archivedAt": "2019-08-24T14:15:22Z",
- "startTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "channelType": "WHATSAPP",
- "messagingConversationId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "contacts": [
- {
- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "userId": 0.1,
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "metadata": null,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "addresses": [
- {
- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "channelType": "WHATSAPP",
- "address": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}
], - "customFields": {
- "property1": null,
- "property2": null
}
}GetContacts
List contacts with support for filtering, sorting, and pagination.
Returns a paginated list of contacts. Supports basic filtering, sorting and pagination via query parameters.
Note: The phone and email fields on the Contact object are legacy and will be removed in the future. Use the addresses array for all phone numbers and email addresses.
Example usage: GET /api/v1/contacts?filterBy=firstName:John;email:john@example.com&sortBy=createdAt=desc&pageSize=20&pageToken=Xde34567890
Authorizations:
query Parameters
| filterBy | string |
| searchBy | string |
| sortBy | string |
| page | number <double> |
| pageSize | number <double> |
| pageToken | string |
Responses
Response samples
- 200
- 401
- 403
- 500
{- "items": [
- {
- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "userId": 0.1,
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "metadata": null,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "addresses": [
- {
- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "channelType": "WHATSAPP",
- "address": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}
], - "nextPageToken": "string",
- "totalCount": 0.1
}CreateContact
Create a new contact.
Creates a new contact. Custom fields and addresses can be included in the request body.
Note: The phone and email fields on the Contact object are legacy and will be removed in the future. Use the addresses array for all phone numbers and email addresses.
Example usage: POST /api/v1/contacts { "firstName": "Jane", "lastName": "Doe", "customFields": { "source": "web" }, "addresses": [ { "address": "+56912345678", "channelType": "PHONE" } ] }
Authorizations:
Request Body schema: application/jsonrequired
| userId | number or null <double> |
| customFields | object (Dictionary_unknown_) A TSOA-compatible dictionary type that replaces Record<string, T>. This type is used to ensure proper runtime validation with TSOA. |
| providerId | string or null |
| providerName | string or null |
| nationalId | string or null |
| firstName | string or null |
| lastName | string or null |
string or null Deprecated | |
| phone | string or null Deprecated |
| contactCompanyId | number or null <double> |
| companyPosition | string or null |
| metadata | any |
| createdAt | string <date-time> |
Array of objects (Omit_NewContactAddress.contactId_) |
Responses
Request samples
- Payload
{- "userId": 0.1,
- "customFields": {
- "property1": null,
- "property2": null
}, - "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "metadata": null,
- "createdAt": "2019-08-24T14:15:22Z",
- "addresses": [
- {
- "channelType": "WHATSAPP",
- "address": "string"
}
]
}Response samples
- 200
- 401
- 403
- 500
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "userId": 0.1,
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "metadata": null,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "addresses": [
- {
- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "channelType": "WHATSAPP",
- "address": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}GetContact
Get a contact by ID.
Retrieves a single contact by its unique identifier, including all custom fields and addresses.
Note: The phone and email fields on the Contact object are legacy and will be removed in the future. Use the addresses array for all phone numbers and email addresses.
Authorizations:
path Parameters
| id required | number <double> |
Responses
Response samples
- 200
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "userId": 0.1,
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "metadata": null,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "addresses": [
- {
- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "channelType": "WHATSAPP",
- "address": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}UpdateContact
Update an existing contact.
Updates the details of an existing contact, including custom fields and addresses. Only fields provided in the request body will be updated.
Note: The phone and email fields on the Contact object are legacy and will be removed in the future. Use the addresses array for all phone numbers and email addresses.
Example usage: PUT /api/v1/contacts/123 { "firstName": "Janet", "customFields": { "priority": "high" } }
Authorizations:
path Parameters
| id required | number <double> |
Request Body schema: application/jsonrequired
| id | number <double> |
| tenantId | string |
| createdAt | string <date-time> |
| updatedAt | string <date-time> |
| userId | number or null <double> |
| customFields | object (Dictionary_unknown_) A TSOA-compatible dictionary type that replaces Record<string, T>. This type is used to ensure proper runtime validation with TSOA. |
| metadata | any |
| providerId | string or null |
| providerName | string or null |
| nationalId | string or null |
| firstName | string or null |
| lastName | string or null |
string or null Deprecated | |
| phone | string or null Deprecated |
| contactCompanyId | number or null <double> |
| companyPosition | string or null |
Array of objects (Omit_NewContactAddress.contactId_) |
Responses
Request samples
- Payload
{- "id": 0.1,
- "tenantId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "userId": 0.1,
- "customFields": {
- "property1": null,
- "property2": null
}, - "metadata": null,
- "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "addresses": [
- {
- "channelType": "WHATSAPP",
- "address": "string"
}
]
}Response samples
- 200
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "userId": 0.1,
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "metadata": null,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "addresses": [
- {
- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "channelType": "WHATSAPP",
- "address": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}DeleteContact
Delete a contact by ID.
Permanently deletes a contact and all associated custom fields and addresses.
Authorizations:
path Parameters
| id required | number <double> |
Responses
Response samples
- 200
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "userId": 0.1,
- "contactCompanyId": 0.1,
- "companyPosition": "string",
- "metadata": null,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "addresses": [
- {
- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "channelType": "WHATSAPP",
- "address": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
]
}SearchContacts
Search contacts using advanced querying, sorting, search and pagination.
Performs a full search across all contacts. Supports advanced search parameters, sorting and pagination.
Note:
- This endpoint may be rate limited to ensure system stability.
- The
phoneandemailfields on the Contact object are legacy and may be removed in the future. Use theaddressesarray for all phone numbers and email addresses.
Example usage: POST /api/v1/contacts/search { "filters": [ { "field": "addresses.address", "operator": "eq", "value": "+56912345678" }, { "field": "addresses.address", "operator": "contains", "value": "example.com" } ], "sort": [ { "field": "createdAt", "direction": "desc" } ], "size": 20, "pageToken": "Xde34567890", "includeTotalCount": "true" }
Authorizations:
Request Body schema: application/jsonrequired
| search | string |
Array of objects (SearcherDocumentSearchFilter) | |
Array of objects (SearcherDocumentSearchSort) | |
| size | number <double> |
| pageToken | string |
| includeArchived | boolean |
| includeTotalCount | boolean |
Responses
Request samples
- Payload
{- "search": "string",
- "filters": [
- {
- "field": "string",
- "operator": "eq",
- "value": "string",
- "or": true
}
], - "sort": [
- {
- "field": "string",
- "direction": "asc"
}
], - "size": 0.1,
- "pageToken": "string",
- "includeArchived": true,
- "includeTotalCount": true
}Response samples
- 200
- 401
- 403
- 500
{- "items": [
- {
- "tenantId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "customFields": {
- "property1": null,
- "property2": null
}, - "metadata": null,
- "addresses": [
- {
- "id": 0.1,
- "tenantId": "string",
- "contactId": 0.1,
- "channelType": "WHATSAPP",
- "address": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "providerId": "string",
- "providerName": "string",
- "nationalId": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phone": "string",
- "companyPosition": "string",
- "id": "string",
- "modelType": "Contact",
- "archivedAt": "2019-08-24T14:15:22Z",
- "eventSequence": 0.1,
- "eventTimestamp": "2019-08-24T14:15:22Z",
- "userId": "string",
- "contactCompanyId": "string"
}
], - "nextPageToken": "string",
- "totalCount": 0.1
}GetMessage
Get a message by ID.
This endpoint allows you to retrieve a specific message using its unique identifier. The response includes all message details including content, sender/recipient info, signed attachments, and metadata.
Authorizations:
path Parameters
| messageId required | string |
Responses
Response samples
- 200
- 400
- 401
- 403
- 500
{- "id": "string",
- "tenantId": "string",
- "conversationId": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "providerId": "string",
- "contactId": 0.1,
- "userId": "string",
- "content": "string",
- "status": "pending",
- "direction": "inbound",
- "channel": "whatsapp",
- "sender": {
- "providerId": "string",
- "address": "string",
- "role": "user",
- "displayName": "string",
- "metadata": {
- "property1": null,
- "property2": null
}
}, - "recipient": {
- "providerId": "string",
- "address": "string",
- "role": "user",
- "displayName": "string",
- "metadata": {
- "property1": null,
- "property2": null
}
}, - "attachments": [
- {
- "id": "string",
- "type": "image",
- "url": "string",
- "unsignedUrl": "string",
- "metadata": {
- "property1": null,
- "property2": null
}, - "mediaProcessing": {
- "textRepresentation": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}, - "summary": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}
}, - "isCacheable": true
}
], - "createdAt": "string",
- "updatedAt": "string",
- "metadata": {
- "property1": null,
- "property2": null
}, - "errors": [
- {
- "code": 0.1,
- "title": "string",
- "message": "string",
- "href": "string",
- "provider": "string"
}
], - "customFields": {
- "property1": null,
- "property2": null
}, - "mediaProcessing": {
- "textRepresentation": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}, - "summary": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}
}
}CreateTemplateMessage
Send a WhatsApp template message.
Note: You must use either 'variables' OR 'components', but not both:
- Use 'variables' for simple cases with only text variables in the body component
- Use 'components' for full functionality including images, documents, currency, headers, and buttons
Important: While the API supports all WhatsApp template components, templates with some components (like images, documents, currency) are not yet supported using the LlamadaPro UI.
Phone numbers must be in E.164 format (e.g. +14155552671)
Authorizations:
Request Body schema: application/jsonrequired
| fromPhoneNumber required | string |
| toPhoneNumber required | string |
| userId | string |
| templateName required | string |
| languageCode required | string |
Array of objects (WhatsAppTemplateMessageVariable) | |
Array of WhatsAppTemplateMessageHeaderComponent (object) or WhatsAppTemplateMessageBodyComponent (object) or WhatsAppTemplateMessageButtonComponent (object) (WhatsAppTemplateMessageComponent) | |
| customFields | object (Dictionary_unknown_) A TSOA-compatible dictionary type that replaces Record<string, T>. This type is used to ensure proper runtime validation with TSOA. |
Responses
Request samples
- Payload
{- "fromPhoneNumber": "string",
- "toPhoneNumber": "string",
- "userId": "string",
- "templateName": "string",
- "languageCode": "string",
- "variables": [
- {
- "value": "string"
}
], - "components": [
- {
- "type": "header",
- "parameters": [
- {
- "type": "text",
- "text": "string"
}
]
}
], - "customFields": {
- "property1": null,
- "property2": null
}
}Response samples
- 200
- 401
- 403
{- "id": "string",
- "tenantId": "string",
- "conversationId": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "providerId": "string",
- "contactId": 0.1,
- "userId": "string",
- "content": "string",
- "status": "pending",
- "direction": "inbound",
- "channel": "whatsapp",
- "sender": {
- "providerId": "string",
- "address": "string",
- "role": "user",
- "displayName": "string",
- "metadata": {
- "property1": null,
- "property2": null
}
}, - "recipient": {
- "providerId": "string",
- "address": "string",
- "role": "user",
- "displayName": "string",
- "metadata": {
- "property1": null,
- "property2": null
}
}, - "attachments": [
- {
- "id": "string",
- "type": "image",
- "url": "string",
- "unsignedUrl": "string",
- "metadata": {
- "property1": null,
- "property2": null
}, - "mediaProcessing": {
- "textRepresentation": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}, - "summary": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}
}, - "isCacheable": true
}
], - "createdAt": "string",
- "updatedAt": "string",
- "metadata": {
- "property1": null,
- "property2": null
}, - "errors": [
- {
- "code": 0.1,
- "title": "string",
- "message": "string",
- "href": "string",
- "provider": "string"
}
], - "customFields": {
- "property1": null,
- "property2": null
}, - "mediaProcessing": {
- "textRepresentation": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}, - "summary": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}
}
}CreateMessage
Send a WhatsApp free form message.
Supports sending various types of messages including text, images, documents, etc. For media messages, provide a fileId from the files service.
Phone numbers must be in E.164 format (e.g. +14155552671)
Authorizations:
Request Body schema: application/jsonrequired
| fromPhoneNumber required | string |
| toPhoneNumber required | string |
| userId | string |
| content required | string |
| type required | string (WhatsAppMessageType) Enum: "text" "image" "audio" "video" "document" "sticker" "location" "contacts" "interactive" "reaction" "button" "order" "system" "unknown" "unsupported" "media_placeholder" WhatsApp message types. Defines all supported message types that can be received from WhatsApp webhooks, including standard message types and special types for coexistence features. |
| customFields | object (Dictionary_unknown_) A TSOA-compatible dictionary type that replaces Record<string, T>. This type is used to ensure proper runtime validation with TSOA. |
| fileId | string |
Responses
Request samples
- Payload
{- "fromPhoneNumber": "string",
- "toPhoneNumber": "string",
- "userId": "string",
- "content": "string",
- "type": "text",
- "customFields": {
- "property1": null,
- "property2": null
}, - "fileId": "string"
}Response samples
- 200
- 401
- 403
{- "id": "string",
- "tenantId": "string",
- "conversationId": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "providerId": "string",
- "contactId": 0.1,
- "userId": "string",
- "content": "string",
- "status": "pending",
- "direction": "inbound",
- "channel": "whatsapp",
- "sender": {
- "providerId": "string",
- "address": "string",
- "role": "user",
- "displayName": "string",
- "metadata": {
- "property1": null,
- "property2": null
}
}, - "recipient": {
- "providerId": "string",
- "address": "string",
- "role": "user",
- "displayName": "string",
- "metadata": {
- "property1": null,
- "property2": null
}
}, - "attachments": [
- {
- "id": "string",
- "type": "image",
- "url": "string",
- "unsignedUrl": "string",
- "metadata": {
- "property1": null,
- "property2": null
}, - "mediaProcessing": {
- "textRepresentation": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}, - "summary": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}
}, - "isCacheable": true
}
], - "createdAt": "string",
- "updatedAt": "string",
- "metadata": {
- "property1": null,
- "property2": null
}, - "errors": [
- {
- "code": 0.1,
- "title": "string",
- "message": "string",
- "href": "string",
- "provider": "string"
}
], - "customFields": {
- "property1": null,
- "property2": null
}, - "mediaProcessing": {
- "textRepresentation": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}, - "summary": {
- "errorMessage": "string",
- "processedAt": "string",
- "content": "string",
- "status": "pending"
}
}
}UploadMedia
Upload media to WhatsApp Business API.
Supports two modes:
- File ID mode: Upload existing file from files service via
fileId - Direct upload mode: Upload raw file data via
fileName,contentType, andcontent
Phone numbers must be in E.164 format (e.g. +14155552671)
Authorizations:
Request Body schema: application/jsonrequired
| fileName | string |
| contentType | string |
| fileId | string |
| fromPhoneNumber required | string |
| content | string |
| tags | object (Dictionary_string_) A TSOA-compatible dictionary type that replaces Record<string, T>. This type is used to ensure proper runtime validation with TSOA. |
Responses
Request samples
- Payload
{- "fileName": "string",
- "contentType": "string",
- "fileId": "string",
- "fromPhoneNumber": "string",
- "content": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}
}Response samples
- 200
- 401
- 403
{- "url": "string",
- "size": 0.1,
- "fileName": "string",
- "contentType": "string",
- "fileId": "string",
- "mediaId": "string",
- "tags": {
- "property1": "string",
- "property2": "string"
}
}GetCustomFieldListOptions
List options for a custom field definition with sorting and pagination.
Authorizations:
path Parameters
| definitionId required | number <double> |
query Parameters
| filterBy | string |
| searchBy | string |
| sortBy | string |
| page | number <double> |
| pageSize | number <double> |
| pageToken | string |
| tenantId | string |
Responses
Response samples
- 200
- 400
- 401
- 403
- 500
{- "items": [
- {
- "id": 0.1,
- "tenantId": "string",
- "definitionId": 0.1,
- "value": "string",
- "label": "string",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "nextPageToken": "string",
- "totalCount": 0.1
}CreateCustomFieldListOption
Create a new option for a custom field definition.
Authorizations:
path Parameters
| definitionId required | number <double> |
Request Body schema: application/jsonrequired
| definitionId required | number <double> Reference to the custom field definition this option belongs to |
| value required | string The actual value to be stored |
| label | string or null Optional human-readable label for the value |
| description | string or null Optional description of what this option represents |
Responses
Request samples
- Payload
{- "definitionId": 0.1,
- "value": "string",
- "label": "string",
- "description": "string"
}Response samples
- 200
- 400
- 401
- 403
- 500
{- "id": 0.1,
- "tenantId": "string",
- "definitionId": 0.1,
- "value": "string",
- "label": "string",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}GetCustomFieldListOption
Get a specific option by ID, including its properties.
Authorizations:
path Parameters
| definitionId required | number <double> |
| optionId required | number <double> |
Responses
Response samples
- 200
- 400
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "definitionId": 0.1,
- "value": "string",
- "label": "string",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}UpdateCustomFieldListOption
Update an option's display properties while preserving its other values.
Authorizations:
path Parameters
| definitionId required | number <double> |
| optionId required | number <double> |
Request Body schema: application/jsonrequired
| id | number <double> Unique identifier for the list option |
| tenantId | string Tenant identifier the custom field belongs to |
| definitionId | number <double> Reference to the custom field definition this option belongs to |
| value | string The actual value to be stored |
| label | string or null Optional human-readable label for the value |
| description | string or null Optional description of what this option represents |
| createdAt | string <date-time> Timestamp of when the option was created |
| updatedAt | string <date-time> Timestamp of when the option was last updated |
Responses
Request samples
- Payload
{- "id": 0.1,
- "tenantId": "string",
- "definitionId": 0.1,
- "value": "string",
- "label": "string",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}Response samples
- 200
- 400
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "definitionId": 0.1,
- "value": "string",
- "label": "string",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}DeleteCustomFieldListOption
Delete an option from a custom field definition. Warning: Affects existing records using this option.
Authorizations:
path Parameters
| definitionId required | number <double> |
| optionId required | number <double> |
Responses
Response samples
- 200
- 400
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "definitionId": 0.1,
- "value": "string",
- "label": "string",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}GetCustomFieldDefinitions
List custom field definitions with support for filtering by entity type, sorting, and pagination.
Authorizations:
query Parameters
| filterBy | string |
| searchBy | string |
| sortBy | string |
| page | number <double> |
| pageSize | number <double> |
| pageToken | string |
| tenantId | string |
Responses
Response samples
- 200
- 400
- 401
- 403
- 500
{- "items": [
- {
- "id": 0.1,
- "tenantId": "string",
- "entityType": "CONTACT",
- "fieldKey": "string",
- "fieldLabel": "string",
- "fieldType": "STRING",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}
], - "nextPageToken": "string",
- "totalCount": 0.1
}CreateCustomFieldDefinition
Create a new custom field definition with specified type.
Authorizations:
Request Body schema: application/jsonrequired
| description | string or null Optional description of the field's purpose |
| entityType required | string (CustomFieldEntityType) Enum: "CONTACT" "COMPANY" "FUNNEL_CONVERSATION" "FUNNEL_CHANNEL_SESSION" "PRODUCT" Represents the entity types that custom fields can have. |
| fieldKey required | string Unique key/identifier for the field |
| fieldLabel | string or null Optional human-readable label for the field |
| fieldType required | string (CustomFieldType) Enum: "STRING" "NUMBER" "DATE" "BOOLEAN" "LIST" "FILE" Represents the supported data types for custom fields. |
Responses
Request samples
- Payload
{- "description": "string",
- "entityType": "CONTACT",
- "fieldKey": "string",
- "fieldLabel": "string",
- "fieldType": "STRING"
}Response samples
- 200
- 400
- 401
- 403
- 500
{- "id": 0.1,
- "tenantId": "string",
- "entityType": "CONTACT",
- "fieldKey": "string",
- "fieldLabel": "string",
- "fieldType": "STRING",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}GetCustomFieldDefinition
Get a custom field definition by ID, including its properties.
Authorizations:
path Parameters
| id required | number <double> |
Responses
Response samples
- 200
- 400
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "entityType": "CONTACT",
- "fieldKey": "string",
- "fieldLabel": "string",
- "fieldType": "STRING",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}UpdateCustomFieldDefinition
Update a custom field definition's properties while preserving existing data.
Authorizations:
path Parameters
| id required | number <double> |
Request Body schema: application/jsonrequired
| id | number <double> Unique identifier for the custom field definition |
| tenantId | string Tenant identifier the custom field belongs to |
| entityType | string (CustomFieldEntityType) Enum: "CONTACT" "COMPANY" "FUNNEL_CONVERSATION" "FUNNEL_CHANNEL_SESSION" "PRODUCT" Represents the entity types that custom fields can have. |
| fieldKey | string Unique key/identifier for the field |
| fieldLabel | string or null Optional human-readable label for the field |
| fieldType | string (CustomFieldType) Enum: "STRING" "NUMBER" "DATE" "BOOLEAN" "LIST" "FILE" Represents the supported data types for custom fields. |
| description | string or null Optional description of the field's purpose |
| createdAt | string <date-time> Timestamp of when the definition was created |
| updatedAt | string <date-time> Timestamp of when the definition was last updated |
Responses
Request samples
- Payload
{- "id": 0.1,
- "tenantId": "string",
- "entityType": "CONTACT",
- "fieldKey": "string",
- "fieldLabel": "string",
- "fieldType": "STRING",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}Response samples
- 200
- 400
- 401
- 403
- 404
- 500
{- "id": 0.1,
- "tenantId": "string",
- "entityType": "CONTACT",
- "fieldKey": "string",
- "fieldLabel": "string",
- "fieldType": "STRING",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}DeleteCustomFieldDefinition
Delete a custom field definition. If force=true, deletes all associated values. This action is permanent and affects all entities using this field.
Authorizations:
path Parameters
| id required | number <double> |
query Parameters
| force | boolean |
Responses
Response samples
- 200
- 400
- 401
- 403
- 404
- 409
- 500
{- "id": 0.1,
- "tenantId": "string",
- "entityType": "CONTACT",
- "fieldKey": "string",
- "fieldLabel": "string",
- "fieldType": "STRING",
- "description": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}StartBridgeCall
Authorizations:
Request Body schema: application/jsonrequired
| from | string |
| to required | string |
object (ProviderData) | |
| callCustomData | object (CallCustomData) |
Responses
Request samples
- Payload
{- "to": "+1234567890",
- "callCustomData": {
- "customKey": "customValue"
}
}Response samples
- 200
- 401
- 403
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "userId": 0.1,
- "contactId": 0.1,
- "opportunityId": 0.1,
- "analysisConfigId": 0.1,
- "teamId": 0.1,
- "from": "string",
- "to": "string",
- "redirectedTo": "string",
- "duration": 0.1,
- "direction": "string",
- "status": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "metadata": null,
- "customData": null,
- "agentScore": 0.1,
- "category": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "lastUpdateSequence": 0.1
}StartAgentCall
Authorizations:
Request Body schema: application/jsonrequired
| voiceAgentId required | number <double> |
| to required | string |
| contextVariables required | object |
| customData | object (CallCustomData) |
Responses
Request samples
- Payload
{- "voiceAgentId": 123,
- "to": "+1234567890",
- "contextVariables": {
- "customerFirstName": "Pedro",
- "customerLastName": "Gomez"
}, - "customData": {
- "customKey": "customValue"
}
}Response samples
- 200
- 401
- 403
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "userId": 0.1,
- "contactId": 0.1,
- "opportunityId": 0.1,
- "analysisConfigId": 0.1,
- "teamId": 0.1,
- "from": "string",
- "to": "string",
- "redirectedTo": "string",
- "duration": 0.1,
- "direction": "string",
- "status": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "metadata": null,
- "customData": null,
- "agentScore": 0.1,
- "category": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "lastUpdateSequence": 0.1
}CreateCall
Authorizations:
Request Body schema: application/jsonrequired
| status required | string |
| userId required | number or null <double> |
| metadata required | any |
| providerId | string |
| providerName | string |
| customData | any |
| funnelConversationId | number <double> |
| sessionId | number <double> |
| from required | string |
| to required | string |
| redirectedTo | string or null |
| duration required | number or null <double> |
| direction required | string |
| startTime required | string <date-time> |
| teamId | number or null <double> |
Responses
Request samples
- Payload
{- "status": "string",
- "userId": 0.1,
- "metadata": null,
- "providerId": "string",
- "providerName": "string",
- "customData": null,
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "from": "string",
- "to": "string",
- "redirectedTo": "string",
- "duration": 0.1,
- "direction": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "teamId": 0.1
}Response samples
- 200
- 401
- 403
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "userId": 0.1,
- "contactId": 0.1,
- "opportunityId": 0.1,
- "analysisConfigId": 0.1,
- "teamId": 0.1,
- "from": "string",
- "to": "string",
- "redirectedTo": "string",
- "duration": 0.1,
- "direction": "string",
- "status": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "metadata": null,
- "customData": null,
- "agentScore": 0.1,
- "category": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "lastUpdateSequence": 0.1
}Response samples
- 200
- 401
- 403
- 404
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "funnelConversationId": 0.1,
- "sessionId": 0.1,
- "userId": 0.1,
- "contactId": 0.1,
- "opportunityId": 0.1,
- "analysisConfigId": 0.1,
- "teamId": 0.1,
- "from": "string",
- "to": "string",
- "redirectedTo": "string",
- "duration": 0.1,
- "direction": "string",
- "status": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "metadata": null,
- "customData": null,
- "agentScore": 0.1,
- "category": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "lastUpdateSequence": 0.1
}GetCallTranscription
Authorizations:
path Parameters
| callId required | number <double> |
Responses
Response samples
- 200
- 401
- 403
- 404
{- "id": 0.1,
- "tenantId": "string",
- "providerId": "string",
- "providerName": "string",
- "recordingId": 0.1,
- "url": "string",
- "text": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}GetCallRecording
Authorizations:
path Parameters
| callId required | number <double> |
Responses
Response samples
- 200
- 401
- 403
- 404
{- "id": 0.1,
- "tenantId": "string",
- "callId": 0.1,
- "providerId": "string",
- "providerName": "string",
- "callProviderId": "string",
- "callProviderName": "string",
- "url": "string",
- "startTime": "2019-08-24T14:15:22Z",
- "duration": 0.1,
- "dualChannel": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z"
}