Ticket
Ticket refers to a unit of a customer's inquiry, forming the basis of all features and functionalities of Sendbird Desk. On this page, you can find how to create, retrieve, close, and display tickets on a client app.
Note: Every ticket has a corresponding group channel in the Chat SDK because the messages within a ticket are managed by Sendbird Chat.
Create a ticket
Implement the Ticket.create()
method to create a new ticket on the Desk server either before or after a customer's initial message. Once created, use ticket.getChannel()
to retrieve the information of the ticket and its channel as a callback from the server. When a customer sends the first message, the ticket is assigned to an available agent by the Desk server while messages are sent and received through the Chat SDK.
Note: Until a customer sends the first message, agents can't see the ticket on the Sendbird Dashboard.
You can also append additional information like a ticket's priority or related channel URLs by passing several arguments to the corresponding parameters.
List of arguments
Arguments
Required | Type | Description |
---|---|---|
TICKET_TITLE | string | Specifies the title of the ticket. |
USER_NAME | string | Specifies the name of a user who submits or receives the ticket. |
Optional | Type | Description |
---|---|---|
GROUP_KEY | string | Specifies the unique key of a team for the assignment of the ticket. |
customFields | [String: String] | Specifies additional information of the ticket that consists of field and its values. Only the field already registered in Settings > Ticket fields on your dashboard can be used. |
PRIORITY | string | Specifies the priority value of the ticket. Higher values stand for higher priority. Acceptable values are LOW, MEDIUM, HIGH and URGENT. |
RELATED_CHANNEL_URLS | array | Specifies one or more group channel URL and its channel name in Sendbird Chat that are relevant to this ticket. Up to three related channels can be added per ticket. |
BOT_KEY | string | Specifies the identifier of a specific bot. The bot with the specified bot key will be the assignee of the created ticket. |
Retrieve a list of tickets
Use the Ticket.getOpenedList()
and Ticket.getClosedList()
to retrieve a list of the current customer's open and closed tickets.
Note: Only ten tickets can be retrieved per request in descending order of the message creation time.
You can filter tickets by adding a ticket field as a search filter to the getOpenedList()
and getClosedList()
. Tickets that have a value of the selected field will appear on the ticket list.
Retrieve a ticket
You can retrieve a specific ticket using its channel URL.
Display open ticket count
Use the Ticket.getOpenCount()
to display the number of open tickets on a client app.
Close a ticket
To allow your customers to directly close a ticket from their app, use the ticket.close()
method.
Note: Only active and idle tickets can be closed by a customer.
Reopen a closed ticket
Use the ticket.reopen()
method to reopen a closed ticket from a client app.
Note: Tickets that have been closed more than 20 days prior to the request can't be reopened.