Skip to content

node-zendesk • Docs


node-zendesk / clients/core/tickets / Tickets

Class: Tickets ​

Client for the Zendesk API - Tickets.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/

Extends ​

Constructors ​

new Tickets() ​

new Tickets(options): Tickets

Parameters ​

• options: ZendeskClientOptions

The client options.

Returns ​

Tickets

Overrides ​

Client.constructor

Defined in ​

clients/core/tickets.d.ts:510

Properties ​

_transporter ​

_transporter: Transporter

Inherited from ​

Client._transporter

Defined in ​

clients/client.d.ts:42


eventTarget ​

eventTarget: CustomEventTarget

Event target to handle custom events.

Inherited from ​

Client.eventTarget

Defined in ​

clients/client.d.ts:40


jsonAPINames ​

jsonAPINames: string[]

Array to hold names used in the JSON API.

Overrides ​

Client.jsonAPINames

Defined in ​

clients/core/tickets.d.ts:511


options ​

options: ZendeskClientOptions & object

Configuration options for the client.

Type declaration ​

get() ​

get: (key) => any

Parameters ​

• key: string

Returns ​

any

Inherited from ​

Client.options

Defined in ​

clients/client.d.ts:34


sideLoad ​

sideLoad: any[]

Array to handle side-loaded resources.

Inherited from ​

Client.sideLoad

Defined in ​

clients/client.d.ts:37


sideLoadMap ​

sideLoadMap: object[]

Defined in ​

clients/core/tickets.d.ts:512


useDotJson ​

useDotJson: boolean

Flag to indicate if the API endpoint should use '.json' ending.

Inherited from ​

Client.useDotJson

Defined in ​

clients/client.d.ts:39

Accessors ​

transporter ​

Get Signature ​

get transporter(): Transporter

Returns ​

Transporter

Transporter for making requests.

Inherited from ​

Client.transporter

Defined in ​

clients/client.d.ts:41

Methods ​

_rawRequest() ​

_rawRequest(method, uri, ...arguments_): Promise<object>

Parameters ​

• method: any

• uri: any

• ...arguments_: any[]

Returns ​

Promise<object>

response ​

response: any

result ​

result: object

Inherited from ​

Client._rawRequest

Defined in ​

clients/client.d.ts:78


addTags() ​

addTags(ticketId, tags): Promise<void>

Add tags to a specific ticket.

Parameters ​

• ticketId: number

The ID of the ticket to add tags to.

• tags: string[]

An array of tags to add to the ticket.

Returns ​

Promise<void>

A promise that resolves when the tags are successfully added to the ticket.

Throws ​

If ticketId is not a valid number or tags is not an array of strings.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#updating-tag-lists

Example ​

ts
// Add tags to a specific ticket
const ticketId = 12345;
const tags = ['tag1', 'tag2'];
await client.tickets.addTags(ticketId, tags);

Defined in ​

clients/core/tickets.d.ts:878


create() ​

create(ticket): Promise<object>

Create a new ticket.

Parameters ​

• ticket: CreateOrUpdateTicket

Details of the ticket to be created.

Returns ​

Promise<object>

The created ticket details.

response ​

response: object

result ​

result: Ticket

Throws ​

If the ticket details are not provided or invalid.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#create-ticket

Example ​

ts
const newTicket = await client.tickets.create({ subject: 'New ticket', description: 'Ticket description' });

Defined in ​

clients/core/tickets.d.ts:643


createMany() ​

createMany(tickets): Promise<object>

Create multiple new tickets.

Parameters ​

• tickets: CreateManyTickets

An object of tickets containing an array of tickets.

Returns ​

Promise<object>

A promise that resolves to an array of created ticket objects.

response ​

response: object

result ​

result: Ticket[]

Throws ​

If the provided tickets is not an array or is empty.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#create-many-tickets

Example ​

ts
// Create multiple new tickets
const newTickets = {
 tickets: [
   { subject: 'Ticket 1', description: 'Description 1' },
   { subject: 'Ticket 2', description: 'Description 2' },
  ]
};
const createdTickets = await client.tickets.createMany(newTickets);

Defined in ​

clients/core/tickets.d.ts:663


delete() ​

delete(ticketId): Promise<void>

Delete a ticket by its ID.

Parameters ​

• ticketId: number

The ID of the ticket to delete.

Returns ​

Promise<void>

A promise that resolves when the ticket is successfully deleted.

Throws ​

If ticketId is not a number or is not provided.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#delete-ticket

Example ​

ts
// Delete a ticket by its ID
const ticketIdToDelete = 123;
await client.tickets.delete(ticketIdToDelete);

Overrides ​

Client.delete

Defined in ​

clients/core/tickets.d.ts:720


deleteMany() ​

deleteMany(ticketIds): Promise<void>

Delete multiple tickets by their IDs.

Parameters ​

• ticketIds: number[]

An array of ticket IDs to delete.

Returns ​

Promise<void>

A promise that resolves when the tickets are successfully deleted.

Throws ​

If ticketIds is not an array of valid ticket IDs.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#bulk-delete-tickets

Example ​

ts
// Delete multiple tickets by their IDs
const ticketIdsToDelete = [123, 456, 789];
await client.tickets.deleteMany(ticketIdsToDelete);

Defined in ​

clients/core/tickets.d.ts:732


emit() ​

emit(eventType, eventData): void

Parameters ​

• eventType: any

• eventData: any

Returns ​

void

Inherited from ​

Client.emit

Defined in ​

clients/client.d.ts:43


export() ​

export(startTime): Promise<object>

DEPRECATED: Use the TicketExport class method export instead.

Export tickets based on a specified start time.

Parameters ​

• startTime: string

The start time for exporting tickets.

Returns ​

Promise<object>

A promise that resolves with the exported tickets.

response ​

response: object

result ​

result: object

Throws ​

If startTime is not a valid string.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#ticket-export

Example ​

ts
// Export tickets based on a start time
const startTime = '2023-01-01T00:00:00Z';
const exportedTickets = await client.tickets.export(startTime);

Deprecated ​

Use TicketExport.export(startTime) method instead.

Defined in ​

clients/core/tickets.d.ts:768


exportAudit() ​

exportAudit(ticketId): Promise<any[]>

Retrieve audits associated with a specific ticket. (Deprecated: Use TicketAudits class list method instead)

Parameters ​

• ticketId: number

The ID of the ticket to retrieve audits for.

Returns ​

Promise<any[]>

A promise that resolves with an array of audits associated with the ticket.

Throws ​

If ticketId is not a valid number.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#listing-ticket-audits

Example ​

ts
// Retrieve audits for a specific ticket (deprecated)
const ticketId = 12345;
const audits = await client.tickets.exportAudit(ticketId);

Deprecated ​

Use the TicketAudits class list method instead.

Defined in ​

clients/core/tickets.d.ts:864


exportSample() ​

exportSample(startTime): Promise<object>

DEPRECATED: Use the TicketExport class method sample instead.

Export a sample of tickets based on a specified start time.

Parameters ​

• startTime: string

The start time for exporting the sample of tickets.

Returns ​

Promise<object>

A promise that resolves with the exported sample of tickets.

response ​

response: object

result ​

result: object

Throws ​

If startTime is not a valid string.

See ​

https://developer.zendesk.com/api-reference/ticketing/ticket-management/incremental_exports/#incremental-sample-export

Example ​

ts
// Export a sample of tickets based on a start time
const startTime = '2023-01-01T00:00:00Z';
const exportedSample = await client.tickets.exportSample(startTime);

Deprecated ​

Use TicketExport.sample(startTime) method instead.

Defined in ​

clients/core/tickets.d.ts:786


get() ​

get(resource): Promise<NodeModule>

Parameters ​

• resource: any

Returns ​

Promise<NodeModule>

Inherited from ​

Client.get

Defined in ​

clients/client.d.ts:62


getAll() ​

getAll(resource): Promise<any[]>

Parameters ​

• resource: any

Returns ​

Promise<any[]>

Inherited from ​

Client.getAll

Defined in ​

clients/client.d.ts:77


getComments() ​

getComments(ticketId): Promise<TicketComment[]>

Retrieve comments associated with a specific ticket.

Parameters ​

• ticketId: number

The ID of the ticket to retrieve comments for.

Returns ​

Promise<TicketComment[]>

A promise that resolves with an array of comments associated with the ticket.

Throws ​

If ticketId is not a valid number.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_comments/

Example ​

ts
// Retrieve comments for a specific ticket
const ticketId = 12345;
const comments = await client.tickets.getComments(ticketId);

Defined in ​

clients/core/tickets.d.ts:851


incremental() ​

incremental(startTime): Promise<any[]>

DEPRECATED: Use the TicketExport class method export instead.

Export incremental tickets based on a specified start time.

Parameters ​

• startTime: string

The start time for exporting incremental tickets.

Returns ​

Promise<any[]>

A promise that resolves with an array of exported incremental tickets.

Throws ​

If startTime is not a valid string.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#ticket-export-incremental

Example ​

ts
// Export incremental tickets based on a start time
const startTime = '2023-01-01T00:00:00Z';
const incrementalTickets = await client.tickets.incremental(startTime);

Deprecated ​

Use TicketExport.export(startTime) method instead.

Defined in ​

clients/core/tickets.d.ts:804


incrementalInclude() ​

incrementalInclude(startTime, include): Promise<any[]>

DEPRECATED: Use the TicketExport class method exportWithInclude instead.

Export incremental tickets based on a specified start time and optional include parameters.

Parameters ​

• startTime: string

The start time for exporting incremental tickets.

• include: string

Optional parameters to include in the export.

Returns ​

Promise<any[]>

A promise that resolves with an array of exported incremental tickets.

Throws ​

If startTime is not a valid string.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#ticket-export-incremental-include

Example ​

ts
// Export incremental tickets based on a start time with optional include parameters
const startTime = '2023-01-01T00:00:00Z';
const include = 'users,groups';
const incrementalTickets = await client.tickets.incrementalInclude(startTime, include);

Deprecated ​

Use TicketExport.exportWithInclude(startTime, include) method instead.

Defined in ​

clients/core/tickets.d.ts:821


incrementalSample() ​

incrementalSample(startTime): Promise<object>

DEPRECATED: Use the TicketExport class method sample instead.

Export a sample of incremental tickets based on a specified start time.

Parameters ​

• startTime: string

The start time for exporting the sample of incremental tickets.

Returns ​

Promise<object>

A promise that resolves with an array of exported incremental tickets.

response ​

response: object

result ​

result: Ticket[]

Throws ​

If startTime is not a valid string.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#ticket-export-incremental-sample

Example ​

ts
// Export a sample of incremental tickets based on a start time
const startTime = '2023-01-01T00:00:00Z';
const incrementalSampleTickets = await client.tickets.incrementalSample(startTime);

Deprecated ​

Use TicketExport.sample(startTime) method instead.

Defined in ​

clients/core/tickets.d.ts:836


list() ​

list(): Promise<Ticket[]>

List all the tickets.

Returns ​

Promise<Ticket[]>

An array of tickets.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const tickets = await client.tickets.list();

Defined in ​

clients/core/tickets.d.ts:524


listAssigned() ​

listAssigned(userID): Promise<Ticket[]>

List all tickets assigned to a specific user.

Parameters ​

• userID: number

The ID of the user.

Returns ​

Promise<Ticket[]>

An array of tickets assigned to the user.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const assignedTickets = await client.tickets.listAssigned(12345);

Defined in ​

clients/core/tickets.d.ts:533


listByOrganization() ​

listByOrganization(orgID): Promise<Ticket[]>

List all tickets associated with a specific organization.

Parameters ​

• orgID: number

The ID of the organization.

Returns ​

Promise<Ticket[]>

An array of tickets under the organization.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const orgTickets = await client.tickets.listByOrganization(6789);

Defined in ​

clients/core/tickets.d.ts:542


listByUserCCD() ​

listByUserCCD(userID): Promise<Ticket[]>

List all tickets where a specific user is CC'd.

Parameters ​

• userID: number

The ID of the user.

Returns ​

Promise<Ticket[]>

An array of tickets where the user is CC'd.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const ccdTickets = await client.tickets.listByUserCCD(12345);

Defined in ​

clients/core/tickets.d.ts:560


listByUserRequested() ​

listByUserRequested(userID): Promise<Ticket[]>

List all tickets requested by a specific user.

Parameters ​

• userID: number

The ID of the user.

Returns ​

Promise<Ticket[]>

An array of tickets requested by the user.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const requestedTickets = await client.tickets.listByUserRequested(12345);

Defined in ​

clients/core/tickets.d.ts:551


listCollaborators() ​

listCollaborators(ticketId): Promise<TicketCollaborator[]>

List collaborators of a specific ticket.

Parameters ​

• ticketId: number

The ID of the ticket.

Returns ​

Promise<TicketCollaborator[]>

An array of collaborators for the ticket.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const collaborators = await client.tickets.listCollaborators(7890);

Defined in ​

clients/core/tickets.d.ts:587


listIncidents() ​

listIncidents(ticketId): Promise<Ticket[]>

List incidents related to a specific ticket.

Parameters ​

• ticketId: number

The ID of the ticket.

Returns ​

Promise<Ticket[]>

An array of incidents related to the ticket.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const incidents = await client.tickets.listIncidents(7890);

Defined in ​

clients/core/tickets.d.ts:596


listMetrics() ​

listMetrics(ticketId): Promise<object>

Retrieve metrics for a specific ticket.

Parameters ​

• ticketId: number

The ID of the ticket.

Returns ​

Promise<object>

Metrics details for the ticket.

response ​

response: object

result ​

result: Ticket

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const metrics = await client.tickets.listMetrics(7890);

Defined in ​

clients/core/tickets.d.ts:605


listRecent() ​

listRecent(): Promise<Ticket[]>

List recently viewed tickets by the requesting agent.

Returns ​

Promise<Ticket[]>

An array of recently viewed tickets.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const recentTickets = await client.tickets.listRecent();

Defined in ​

clients/core/tickets.d.ts:578


listWithFilter() ​

listWithFilter(type, value): Promise<Ticket[]>

List tickets based on a specific filter.

Parameters ​

• type: string

Type of filter.

• value: string | number

Value for the filter.

Returns ​

Promise<Ticket[]>

An array of tickets matching the filter.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#list-tickets

Example ​

ts
const filteredTickets = await client.tickets.listWithFilter('status', 'open');

Defined in ​

clients/core/tickets.d.ts:570


merge() ​

merge(ticketId, mergedTicket): Promise<object>

Merge a ticket with another ticket.

Parameters ​

• ticketId: number

The ID of the ticket to be merged.

• mergedTicket: object

The ticket object representing the ticket to merge with.

Returns ​

Promise<object>

A promise that resolves with the merged ticket object.

response ​

response: object

result ​

result: Ticket

Throws ​

If ticketId is not a valid ticket ID or mergedTicket is not a valid ticket object.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#merge-tickets

Example ​

ts
// Merge a ticket with another ticket
const sourceTicketId = 123;
const targetTicket = {
  subject: 'Merged Ticket',
  description: 'This is the merged ticket description.',
  // ...other ticket properties
};
const mergedTicket = await client.tickets.merge(sourceTicketId, targetTicket);

Defined in ​

clients/core/tickets.d.ts:750


on() ​

on(eventType, callback): void

Parameters ​

• eventType: any

• callback: any

Returns ​

void

Inherited from ​

Client.on

Defined in ​

clients/client.d.ts:44


patch() ​

patch(...arguments_): Promise<void | object>

Patches a resource.

Parameters ​

• ...arguments_: any[]

The resources or parts of the resource path followed by the body.

Returns ​

Promise<void | object>

  • Either void or response object

Inherited from ​

Client.patch

Defined in ​

clients/client.d.ts:68


post() ​

post(resource, body): Promise<NodeModule>

Parameters ​

• resource: any

• body: any

Returns ​

Promise<NodeModule>

Inherited from ​

Client.post

Defined in ​

clients/client.d.ts:70


put() ​

put(resource, body): Promise<NodeModule>

Parameters ​

• resource: any

• body: any

Returns ​

Promise<NodeModule>

Inherited from ​

Client.put

Defined in ​

clients/client.d.ts:69


request() ​

request<T>(method, uri, ...arguments_): Promise<NodeModule>

Request method that handles various HTTP methods.

Type Parameters ​

• T

Parameters ​

• method: string

HTTP method (e.g., 'GET', 'POST').

• uri: string

The URI for the request.

• ...arguments_: any[]

Additional arguments for the request.

Returns ​

Promise<NodeModule>

  • The API response.

Inherited from ​

Client.request

Defined in ​

clients/client.d.ts:96


requestAll() ​

requestAll(method, uri, ...arguments_): Promise<any[]>

Parameters ​

• method: any

• uri: any

• ...arguments_: any[]

Returns ​

Promise<any[]>

Inherited from ​

Client.requestAll

Defined in ​

clients/client.d.ts:97


requestUpload() ​

requestUpload(uri, file): Promise<any>

Parameters ​

• uri: any

• file: any

Returns ​

Promise<any>

Inherited from ​

Client.requestUpload

Defined in ​

clients/client.d.ts:98


setSideLoad() ​

setSideLoad(array): void

Parameters ​

• array: any

Returns ​

void

Inherited from ​

Client.setSideLoad

Defined in ​

clients/client.d.ts:61


show() ​

show(ticketId): Promise<object>

Retrieve a specific ticket by its ID.

Parameters ​

• ticketId: number

The ID of the ticket.

Returns ​

Promise<object>

Details of the ticket.

response ​

response: object

result ​

result: Ticket

Throws ​

If the ticket ID is not provided or invalid.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#show-ticket

Example ​

ts
const ticket = await client.tickets.show(12345);

Defined in ​

clients/core/tickets.d.ts:618


showMany() ​

showMany(ticketIds): Promise<object>

Retrieve details for multiple tickets based on their IDs.

Parameters ​

• ticketIds: number[]

An array of ticket IDs to fetch.

Returns ​

Promise<object>

An array of ticket details.

response ​

response: object

result ​

result: Ticket[]

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#show-multiple-tickets

Example ​

ts
const ticketsDetails = await client.tickets.showMany([123, 456, 789]);

Defined in ​

clients/core/tickets.d.ts:630


update() ​

update(ticketId, ticket): Promise<object>

Update an existing ticket by its ID.

Parameters ​

• ticketId: number

The ID of the ticket to update.

• ticket: CreateOrUpdateTicket

The updated ticket data as an object.

Returns ​

Promise<object>

A promise that resolves to the updated ticket object.

response ​

response: object

response.audit ​

audit: any[]

response.ticket ​

ticket: Ticket

result ​

result: Ticket

Throws ​

If ticketId is not a number or if ticket is not an object.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#update-ticket

Example ​

ts
// Update an existing ticket
const updatedTicketData = {
  subject: 'Updated Ticket Subject',
  description: 'Updated Ticket Description',
};
const updatedTicket = await client.tickets.update(123, updatedTicketData);

Defined in ​

clients/core/tickets.d.ts:682


updateMany() ​

updateMany(ticketIds, ticket): Promise<object>

Update multiple tickets by their IDs.

Parameters ​

• ticketIds: number[]

An array of ticket IDs to update.

• ticket: object

The updated ticket data as an object.

Returns ​

Promise<object>

A promise that resolves to the updated ticket object.

response ​

response: object

result ​

result: object

Throws ​

If ticketIds is not an array of numbers or if ticket is not an object.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#update-many-tickets

Example ​

ts
// Update multiple tickets by their IDs
const ticketIdsToUpdate = [123, 456, 789];
const updatedTicketData = {
  status: 'solved',
  priority: 'high',
};
const updatedTickets = await client.tickets.updateMany(ticketIdsToUpdate, updatedTicketData);

Defined in ​

clients/core/tickets.d.ts:705


updateTags() ​

updateTags(ticketId, tags): Promise<void>

Replace tags on a specific ticket with new tags.

Parameters ​

• ticketId: number

The ID of the ticket to replace tags on.

• tags: string[]

An array of new tags to replace the existing tags on the ticket.

Returns ​

Promise<void>

A promise that resolves when the tags are successfully replaced on the ticket.

Throws ​

If ticketId is not a valid number or tags is not an array of strings.

See ​

https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#updating-tag-lists

Example ​

ts
// Replace tags on a specific ticket
const ticketId = 12345;
const newTags = ['newTag1', 'newTag2'];
await client.tickets.updateTags(ticketId, newTags);

Defined in ​

clients/core/tickets.d.ts:892

Released under the MIT License.