Dixa Conversations API
The Conversations API from Dixa — 27 operation(s) for conversations.
The Conversations API from Dixa — 27 operation(s) for conversations.
openapi: 3.0.3
info:
title: Dixa Agents Conversations API
version: beta
servers:
- url: https://dev.dixa.io
security:
- ApiKeyAuth: []
tags:
- name: Conversations
paths:
/beta/conversations/{conversationId}/anonymize:
patch:
tags:
- Conversations
summary: Anonymize conversation
description: Request the anonymization of a conversation.
operationId: patchConversationsConversationidAnonymize
parameters:
- name: conversationId
in: path
description: the id of the conversation to anonymize
required: true
schema:
type: integer
format: int64
- name: force
in: query
description: Whether to force close the conversation if it is found in a non closed state.
required: false
schema:
default: false
type: boolean
responses:
'202':
description: The conversation's anonymization request status
content:
application/json:
schema:
$ref: '#/components/schemas/AnonymizeEntityOutput'
example:
data:
id: 87bac308-e49f-4134-84cc-96b868f1e1e4
entityType: ConversationAnonymizationType
_type: Conversation
initiatedAt: 2021-12-01T12:46:36.581Z[GMT]
targetEntityId: '10749'
requestedBy: b165fdaa-51d6-44b0-bfcd-5f431d623fa7
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: query parameter force'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Invalid value in request
'404':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'409':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Conflict'
'500':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
/beta/conversations/{conversationId}/messages/{messageId}/anonymize:
patch:
tags:
- Conversations
summary: Anonymize message
description: Request the anonymization of a single message in a conversation.
operationId: patchConversationsConversationidMessagesMessageidAnonymize
parameters:
- name: conversationId
in: path
description: the id of the conversation in which the message belongs
required: true
schema:
type: integer
format: int64
- name: messageId
in: path
description: the id of the message to anonymize
required: true
schema:
type: string
format: uuid
responses:
'202':
description: The message's anonymization request status
content:
application/json:
schema:
$ref: '#/components/schemas/AnonymizeEntityOutput'
example:
data:
id: b165fdaa-51d6-44b0-bfcd-5f431d623fa7
entityType: MessageAnonymizationType
_type: Message
initiatedAt: 2021-12-01T12:46:36.581Z[GMT]
targetEntityId: 10749_1b9adc49-62f7-4056-a9c0-c18c1f25afdb
requestedBy: 4c7af391-b7fd-4560-9d82-b3464eef8776
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value for: path parameter messageId, Invalid value extracted from request context'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Invalid value in request
'404':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
'409':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Conflict'
'500':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
/beta/conversations/{conversationId}/close:
put:
tags:
- Conversations
summary: Close conversation
description: Mark a conversation as closed by providing its id.
operationId: putConversationsConversationidClose
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
requestBody:
description: An optional agent/admin to close the conversation
content:
application/json:
schema:
$ref: '#/components/schemas/CloseConversationInput'
example:
userId: 5a556159-9c21-4f3e-a44f-d323deb80d16
required: false
responses:
'204':
description: The conversation was successfully closed
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, User not found, User is not agent/admin'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Decoding failure in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
/beta/conversations/{conversationId}/followup:
put:
tags:
- Conversations
summary: Followup conversation
description: Follow up a conversation by providing its id and expiration timestamp.
operationId: putConversationsConversationidFollowup
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
requestBody:
description: A request to followup the conversation
content:
application/json:
schema:
$ref: '#/components/schemas/FollowupConversationInput'
example:
timestamp: '2025-01-08T08:31:25Z'
userId: 5a556159-9c21-4f3e-a44f-d323deb80d16
required: true
responses:
'204':
description: The conversation was successfully followed up
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, User not found, User is not agent/admin'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Decoding failure in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
/beta/conversations/{conversationId}/reopen:
put:
tags:
- Conversations
summary: Reopen conversation
description: Reopen a conversation and offer it in the same queue. Falls back to the default organization queue if the conversation has no target queue.
operationId: putConversationsConversationidReopen
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
requestBody:
description: An optional agent/admin to reopen the conversation
content:
application/json:
schema:
$ref: '#/components/schemas/ReopenConversationInput'
example:
userId: a53b25da-f676-4c52-acac-58c9280aa23d
required: false
responses:
'204':
description: The conversation was successfully reopened and offered in the same queue
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, User not found, User is not agent/admin'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Decoding failure in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
/beta/conversations/{conversationId}/transfer/queue:
put:
tags:
- Conversations
summary: Transfer conversation
description: Transfer a conversation to a target queue.
operationId: putConversationsConversationidTransferQueue
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
requestBody:
description: Transfer conversation request
content:
application/json:
schema:
$ref: '#/components/schemas/TransferConversationInput'
example:
queueId: 92f8d193-b26f-4a62-86a3-bb03ee0915e9
userId: a53b25da-f676-4c52-acac-58c9280aa23d
required: true
responses:
'204':
description: The conversation was successfully transferred to the target queue
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, User not found, User is not agent/admin, Queue does not exist'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Decoding failure in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
/beta/conversations/{conversationId}/notes/bulk:
post:
tags:
- Conversations
summary: Add internal notes
description: Create internal notes in a conversation by providing the conversation id.
operationId: postConversationsConversationidNotesBulk
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
requestBody:
description: The list of internal notes to create for a conversation
content:
application/json:
schema:
$ref: '#/components/schemas/BulkCreateInternalNoteInput'
examples:
Input with two internal notes created for the same conversation:
value:
data:
- message: A sample note
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
createdAt: 2021-12-01T12:46:36.581Z[GMT]
- message: Another sample note
required: true
responses:
'200':
description: The created internal notes
content:
application/json:
schema:
$ref: '#/components/schemas/BulkCreateNoteOutput'
examples:
A list of internal notes created successfully and error message for others which failed:
value:
data:
- data:
id: eb31acbb-13f9-4ce7-abd3-44dd86266741
authorId: 5e8a300e-787e-47cd-af53-fc1ccc37933d
createdAt: 2021-12-01T12:46:36.581Z[GMT]
csid: 9456
message: A sample note
_type: BulkActionSuccess
- error:
message: An agent with id:... cannot be found in org.
_type: BulkActionFailure
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Invalid value in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
/beta/conversations/{conversationId}/notes:
get:
tags:
- Conversations
summary: List internal notes
description: Get all internal notes for a particular conversation by providing the conversation id.
operationId: getConversationsConversationidNotes
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
responses:
'200':
description: List of internal notes for a conversation sorted from oldest to newest
content:
application/json:
schema:
$ref: '#/components/schemas/ListInternalNotesOutput'
example:
data:
- id: 3346b99c-8128-4276-ac40-5f30c959e5e7
authorId: c68f42a5-1453-497a-940f-ff36ed4f1631
createdAt: '2021-01-20T09:00:00Z'
csid: 7392
message: A note to remember
- id: 22b8e6b6-4576-4dc0-ab05-60f81e8b0708
authorId: 124d54bb-92d6-41c9-a675-788d6a8c821e
createdAt: '2021-01-22T12:00:00Z'
csid: 7392
message: A note to forget
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Invalid value in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
post:
tags:
- Conversations
summary: Add internal note
description: Create an internal note in a conversation by providing the conversation id.
operationId: postConversationsConversationidNotes
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
requestBody:
description: The internal note to create for a conversation
content:
application/json:
schema:
$ref: '#/components/schemas/CreateInternalNoteInput'
examples:
Input with createdAt:
value:
message: A sample note
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
createdAt: 2021-12-01T12:46:36.581Z[GMT]
Input without createdAt:
value:
message: Another sample note
required: true
responses:
'200':
description: The created internal note
content:
application/json:
schema:
$ref: '#/components/schemas/CreateNoteOutput'
examples:
created internal note:
value:
data:
id: eb31acbb-13f9-4ce7-abd3-44dd86266741
authorId: 5e8a300e-787e-47cd-af53-fc1ccc37933d
createdAt: 2021-12-01T12:46:36.581Z[GMT]
csid: 9456
message: A sample note
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, Agent was not found, Invalid date format'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Decoding failure in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
/beta/conversations/{conversationId}/ratings/{ratingId}/submit:
post:
tags:
- Conversations
summary: Create conversation rating result
description: Create a rating result for a specific conversation.
operationId: postConversationsConversationidRatingsRatingidSubmit
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
- name: ratingId
in: path
description: The ratingId parameter has to be the ID of the offer created via invoking the /conversations/{conversationId}/ratings/offer endpoint.
required: true
schema:
type: string
requestBody:
description: The rating result to be created for a conversation
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRatingResultInput'
example:
userId: d3cf6f15-1497-4e71-92f2-9b3b228352bd
ratingResult:
value: 4
_type: Csat
comment: Best customer service ever!
submittedAt: '2024-03-11T16:39:30Z'
required: true
responses:
'201':
description: The created conversation rating result
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRatingResultOutput'
example:
data:
ratingId: 33cf4e5e-9ce9-461c-b668-be9b712b717c
userId: 4c5f7efa-0822-4b75-bdf5-907fa7336e0c
ratingResult:
value: 5
_type: Csat
comment: Excellent customer service!
submittedAt: '2024-03-11T16:39:30Z'
'400':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Decoding failure in request
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
/beta/conversations/{conversationId}/ratings/offer:
post:
tags:
- Conversations
summary: Create conversation rating offer
description: Create a rating offer for a specific conversation.
operationId: postConversationsConversationidRatingsOffer
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
requestBody:
description: The rating offer to be created for a conversation
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRatingOfferInput'
example:
userId: b0323b42-c428-4afa-970e-20bf5bdeeec4
agentId: eeb3bbe5-0355-4ac1-8af5-20d42a3db24b
ratingType: Csat
offeredAt: '2024-03-11T16:39:30Z'
required: true
responses:
'201':
description: The created conversation rating offer
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRatingOfferOutput'
example:
data:
id: 2f0122db-0824-44d7-b39a-e1f722b8c38c
userId: 7a65c963-b3ca-4bd4-996e-bdbcaa620219
agentId: db7f0b41-b779-4726-a673-07b2a59a550d
ratingType: Csat
offeredAt: '2024-03-11T16:39:30Z'
'400':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Decoding failure in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
/beta/conversations/{conversationId}/rating:
get:
tags:
- Conversations
summary: List rating
description: Deprecated rating endpoint. Use '/ratings'.
operationId: getConversationsConversationidRating
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
responses:
'200':
description: List of ratings for a conversation
content:
application/json:
schema:
$ref: '#/components/schemas/ListConversationRatingsOutput'
example:
data:
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingScore: 4
ratingType: Csat
ratingComment: Super good!
conversationChannel: PstnPhone
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Offered
language: English
timestamps: {}
'400':
description: 'Invalid value for: path parameter conversationId, Invalid value extracted from request context'
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
example:
message: Invalid value in request
'404':
description: An entity in this request could not be found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
example:
message: The requested resource could not be found
'500':
description: Internal failure during request processing
content:
application/json:
schema:
$ref: '#/components/schemas/ServerError'
example:
message: There was an internal server error while processing the request
deprecated: true
/beta/conversations/{conversationId}/ratings:
get:
tags:
- Conversations
summary: List ratings for a conversation
description: Lists latest ratings statuses for a particular conversation by providing the conversation ID. For surveys with multiple questions, rating status will be reported for each individual question of the survey. For example, a response for a 3 question survey that was answered will be 3 elements with status "Rated". Additionally, a multiple question survey can be partially answered, therefore a response of such case will be a mix of "Offered" and "Rated" statuses. Note that the IDs of multiple questions response elements will be the same, because they are part of the same survey.
operationId: getConversationsConversationidRatings
parameters:
- name: conversationId
in: path
required: true
schema:
type: integer
format: int64
responses:
'200':
description: List of ratings for a conversation
content:
application/json:
schema:
$ref: '#/components/schemas/ListConversationRatingsOutput'
examples:
Response when a single question (CSAT) survey was offered:
value:
data:
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingScore: 5
ratingType: Csat
ratingComment: Super good!
conversationChannel: PstnPhone
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Offered
language: en
timestamps:
offered_at: '2025-09-25T14:35:53Z'
modified_at: '2025-09-25T14:36:27Z'
scheduled_for: '2025-09-25T14:35:52Z'
created_at: '2025-09-25T14:34:52Z'
scheduled_at: '2025-09-25T14:34:52Z'
Response when a multiple question survey was offered:
value:
data:
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingType: Nps
conversationChannel: Email
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Offered
language: en
timestamps:
offered_at: '2025-10-10T10:46:40Z'
modified_at: '2025-10-10T10:46:40Z'
scheduled_for: '2025-10-10T10:46:40Z'
created_at: '2025-10-10T10:46:40Z'
scheduled_at: '2025-10-10T10:46:40Z'
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingType: Csat
conversationChannel: Email
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Offered
language: en
timestamps:
offered_at: '2025-10-10T10:46:40Z'
modified_at: '2025-10-10T10:46:40Z'
scheduled_for: '2025-10-10T10:46:40Z'
created_at: '2025-10-10T10:46:40Z'
scheduled_at: '2025-10-10T10:46:40Z'
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingType: ThumbsUpOrDown
conversationChannel: Email
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Offered
language: en
timestamps:
offered_at: '2025-10-10T10:46:40Z'
modified_at: '2025-10-10T10:46:40Z'
scheduled_for: '2025-10-10T10:46:40Z'
created_at: '2025-10-10T10:46:40Z'
scheduled_at: '2025-10-10T10:46:40Z'
Response when a multiple question survey was answered:
value:
data:
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingScore: 8
ratingType: Nps
conversationChannel: Email
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Rated
language: da
timestamps:
offered_at: '2025-10-10T10:46:40Z'
modified_at: '2025-10-10T10:46:40Z'
created_at: '2025-10-10T10:46:40Z'
scheduled_at: '2025-10-10T10:46:40Z'
scheduled_for: '2025-10-10T10:46:40Z'
rated_at: '2025-10-10T10:46:40Z'
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingScore: 5
ratingType: Csat
ratingComment: Super good!
conversationChannel: Email
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Rated
language: da
timestamps:
offered_at: '2025-10-10T10:46:40Z'
modified_at: '2025-10-10T10:46:40Z'
created_at: '2025-10-10T10:46:40Z'
scheduled_at: '2025-10-10T10:46:40Z'
scheduled_for: '2025-10-10T10:46:40Z'
rated_at: '2025-10-10T10:46:40Z'
- id: 33cf4e5e-9ce9-461c-b668-be9b712b717c
ratingScore: 1
ratingType: ThumbsUpOrDown
ratingComment: Nice!
conversationChannel: Email
agentId: a53b25da-f676-4c52-acac-58c9280aa23d
userId: 6d0c5791-e40a-46d4-bba1-1364ce4578ed
ratingStatus: Rated
language: da
timestamps:
# --- truncated at 32 KB (183 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dixa/refs/heads/main/openapi/dixa-conversations-api-openapi.yml