Zendesk Tickets API

The Tickets API from Zendesk — 26 operation(s) for tickets.

Operations 35

POST /api/v2/problems/autocomplete Zendesk Post Api V2 Problems Autocomplete #
GET /api/v2/deleted_tickets Zendesk Get Api V2 Deleted_tickets #
DELETE /api/v2/deleted_tickets/{ticket_id} Zendesk Delete Api V2 Deleted_tickets Ticket_id #
PUT /api/v2/deleted_tickets/{ticket_id}/restore Zendesk Put Api V2 Deleted_tickets Ticket_id Restore #
DELETE /api/v2/deleted_tickets/destroy_many Zendesk Delete Api V2 Deleted_tickets Destroy_many #
PUT /api/v2/deleted_tickets/restore_many Zendesk Put Api V2 Deleted_tickets Restore_many #
GET /api/v2/problems Zendesk Get Api V2 Problems #
GET /api/v2/tickets/{ticket_id}/tags Zendesk Get Api V2 Tickets Ticket_id Tags #
POST /api/v2/tickets/{ticket_id}/tags Zendesk Post Api V2 Tickets Ticket_id Tags #
PUT /api/v2/tickets/{ticket_id}/tags Zendesk Put Api V2 Tickets Ticket_id Tags #
DELETE /api/v2/tickets/{ticket_id}/tags Zendesk Delete Api V2 Tickets Ticket_id Tags #
GET /api/v2/tickets Zendesk Get Api V2 Tickets #
POST /api/v2/tickets Zendesk Post Api V2 Tickets #
GET /api/v2/tickets/{ticket_id} Zendesk Get Api V2 Tickets Ticket_id #
PUT /api/v2/tickets/{ticket_id} Zendesk Put Api V2 Tickets Ticket_id #
DELETE /api/v2/tickets/{ticket_id} Zendesk Delete Api V2 Tickets Ticket_id #
GET /api/v2/tickets/{ticket_id}/collaborators Zendesk Get Api V2 Tickets Ticket_id Collaborators #
GET /api/v2/tickets/{ticket_id}/email_ccs Zendesk Get Api V2 Tickets Ticket_id Email_ccs #
GET /api/v2/tickets/{ticket_id}/followers Zendesk Get Api V2 Tickets Ticket_id Followers #
GET /api/v2/tickets/{ticket_id}/incidents Zendesk Get Api V2 Tickets Ticket_id Incidents #
PUT /api/v2/tickets/{ticket_id}/mark_as_spam Zendesk Put Api V2 Tickets Ticket_id Mark_as_spam #
POST /api/v2/tickets/{ticket_id}/merge Zendesk Post Api V2 Tickets Ticket_id Merge #
GET /api/v2/tickets/{ticket_id}/related Zendesk Get Api V2 Tickets Ticket_id Related #
GET /api/v2/tickets/count Zendesk Get Api V2 Tickets Count #
POST /api/v2/tickets/create_many Zendesk Post Api V2 Tickets Create_many #
DELETE /api/v2/tickets/destroy_many Zendesk Delete Api V2 Tickets Destroy_many #
PUT /api/v2/tickets/mark_many_as_spam Zendesk Put Api V2 Tickets Mark_many_as_spam #
GET /api/v2/tickets/show_many Zendesk Get Api V2 Tickets Show_many #
PUT /api/v2/tickets/update_many Zendesk Put Api V2 Tickets Update_many #
GET /tickets Zendesk List Tickets #
POST /tickets Zendesk Create Ticket #
GET /tickets/{ticket_id} Zendesk Show Ticket #
PUT /tickets/{ticket_id} Zendesk Update Ticket #
DELETE /tickets/{ticket_id} Zendesk Delete Ticket #
GET /tickets/{ticket_id}/comments Zendesk List Ticket Comments #

Documentation

📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/introduction/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/targets/targets/
📖
Documentation
https://developer.zendesk.com/api-reference/sales-crm/resources/account/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/activity_stream/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/channel_framework/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket-attachments/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/audit_logs/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/organizations/organizations/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/business-rules/automations/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/bookmarks/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/brand_agents/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/brands/
📖
Documentation
https://developer.zendesk.com/api-reference/live-chat/chat-api/chats/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_comments/
📖
Documentation
https://developer.zendesk.com/api-reference/custom-data/introduction/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/custom_roles/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/custom_ticket_statuses/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/users/users/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/business-rules/deletion_schedules/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/dynamic_content/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/email_notifications/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/groups/group_memberships/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/business-rules/group_sla_policies/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/groups/groups/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_import/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/incremental_exports/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/job_statuses/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/locales/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/business-rules/macros/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/oauth/oauth_tokens/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/organizations/organization_fields/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/organizations/organization_subscriptions/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/push_notification_devices/
📖
Documentation
https://developer.zendesk.com/api-reference/agent-availability/omnichannel_routing_queues/omnichannel_routing_queues/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/support_addresses/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/lookup_relationships/lookup_relationships/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket-requests/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/resource_collections/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/skill_based_routing/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/satisfaction_ratings/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/satisfaction_reasons/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/search/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/account-configuration/sessions/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/sharing_agreements/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_skips/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/business-rules/sla_policies/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/suspended_tickets/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/tags/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_audits/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_fields/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_form_statuses/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_forms/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/tickets/ticket_metrics/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/business-rules/triggers/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/business-rules/views/
📖
Documentation
https://developer.zendesk.com/api-reference/ticketing/ticket-management/workspaces/

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zendesk-tickets-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zendesk-tickets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1.0'
  title: Zendesk Account Account Settings Tickets API
  description: Needs a description.
tags:
- name: Tickets
paths:
  /api/v2/problems/autocomplete:
    post:
      operationId: AutocompleteProblems
      tags:
      - Tickets
      summary: Zendesk Post  Api V2 Problems Autocomplete
      description: 'Returns tickets whose type is "problem" and whose subject contains the string specified in the `text` parameter.


        You can specify the `text` parameter in the request body rather than the query string. Example:


        `{"text": "fire"}`


        #### Allowed For


        * Agents'
      parameters:
      - name: text
        in: query
        description: The text to search for
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                text:
                  type: string
                  description: The text to search for
            example:
              text: fire
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTicketProblemsResponse'
              examples:
                default:
                  $ref: '#/components/examples/ListTicketProblemsResponseExample'
  /api/v2/deleted_tickets:
    get:
      operationId: ListDeletedTickets
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Deleted_tickets
      description: 'Returns a maximum of 100 deleted tickets per page. See [Pagination](/api-reference/introduction/pagination/).


        The results includes all deleted (and not yet archived) tickets that

        have not yet been [scrubbed](https://support.zendesk.com/hc/en-us/articles/4408845703194#topic_fv5_w51_sdb) in the past 30 days. Archived tickets are

        not included in the results. See [About archived tickets](https://support.zendesk.com/hc/en-us/articles/203657756)

        in the Support Help Center.


        The tickets are ordered chronologically by created date, from oldest to newest.

        The first ticket listed may not be the oldest ticket in your

        account due to [ticket archiving](https://support.zendesk.com/hc/en-us/articles/203657756).


        #### Pagination


        - Cursor pagination (recommended)

        - Offset pagination


        See [Pagination](/api-reference/introduction/pagination/).


        Returns a maximum of 100 records per page.


        #### Allowed For


        * Agents


        #### Rate Limit


        You can make 10 requests every 1 minute using this endpoint.

        When making requests beyond page 100, you can make 5 requests every 1 minute.

        The rate limiting mechanism behaves as described in

        [Monitoring your request activity](/api-reference/ticketing/account-configuration/usage_limits/#monitoring-your-request-activity) in the API introduction.'
      parameters:
      - $ref: '#/components/parameters/TicketSortBy'
      - $ref: '#/components/parameters/TicketSortOrder'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListDeletedTicketsResponse'
              examples:
                default:
                  $ref: '#/components/examples/ListDeletedTicketsResponseExample'
  /api/v2/deleted_tickets/{ticket_id}:
    delete:
      operationId: DeleteTicketPermanently
      tags:
      - Tickets
      summary: Zendesk Delete  Api V2 Deleted_tickets Ticket_id
      description: 'Permanently deletes a soft-deleted ticket. See [Soft delete](https://support.zendesk.com/hc/en-us/articles/4408834005530#topic_zrm_wbj_1db)

        in the Zendesk GDPR docs. To soft delete a ticket, use the [Delete Ticket](#delete-ticket) endpoint.


        This endpoint enqueues a ticket deletion job and returns a payload with the jobs status.


        If the job succeeds, the ticket is permanently deleted. This operation can''t be undone.


        This endpoint returns a `job_status` [JSON object](/api-reference/ticketing/ticket-management/job_statuses/#json-format) and queues a background job to do the work.

        Use the [Show Job Status](/api-reference/ticketing/ticket-management/job_statuses/#show-job-status) endpoint to check for the job''s completion.


        #### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                default:
                  $ref: '#/components/examples/PermanentlyDeleteTicketJobStatusResponseExample'
  /api/v2/deleted_tickets/{ticket_id}/restore:
    put:
      operationId: RestoreDeletedTicket
      tags:
      - Tickets
      summary: Zendesk Put  Api V2 Deleted_tickets Ticket_id Restore
      description: '#### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Empty response
          content:
            application/json:
              schema:
                type: string
                description: Empty response
                example: ''
              example: ''
  /api/v2/deleted_tickets/destroy_many:
    delete:
      operationId: BulkPermanentlyDeleteTickets
      tags:
      - Tickets
      summary: Zendesk Delete  Api V2 Deleted_tickets Destroy_many
      description: 'Permanently deletes up to 100 soft-deleted tickets. See [Soft delete](https://support.zendesk.com/hc/en-us/articles/4408834005530#topic_zrm_wbj_1db)

        in the Zendesk GDPR docs. To soft delete tickets, use the [Bulk Delete Tickets](#bulk-delete-tickets) endpoint.


        This endpoint accepts a comma-separated list of up to 100 ticket ids. It enqueues

        a ticket deletion job and returns a payload with the jobs status.


        If one ticket fails to be deleted, the endpoint still attempts to delete the others. If the job succeeds,

        the tickets that were successfully deleted are permanently deleted. This operation can''t be undone.


        This endpoint returns a `job_status` [JSON object](/api-reference/ticketing/ticket-management/job_statuses/#json-format) and queues a background job to do the work. Use the [Show Job Status](/api-reference/ticketing/ticket-management/job_statuses/#show-job-status) endpoint to check for the job''s completion. Only a certain number of jobs can be queued or running at the same time. See [Job limit](/api-reference/introduction/rate-limits/#job-limit) for more information.


        #### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketIds'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                default:
                  $ref: '#/components/examples/PermanentlyDeleteTicketJobStatusResponseExample'
  /api/v2/deleted_tickets/restore_many:
    put:
      operationId: BulkRestoreDeletedTickets
      tags:
      - Tickets
      summary: Zendesk Put  Api V2 Deleted_tickets Restore_many
      description: '#### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketIds'
      responses:
        '200':
          description: Empty response
          content:
            application/json:
              schema:
                type: string
                description: Empty response
                example: ''
              example: ''
  /api/v2/problems:
    get:
      operationId: ListTicketProblems
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Problems
      description: 'The response is always ordered by `updated_at` in descending order


        #### Allowed For


        * Agents


        #### Pagination


        * Cursor pagination (recommended)

        * Offset pagination


        See [Pagination](/api-reference/introduction/pagination/).'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTicketProblemsResponse'
              examples:
                default:
                  $ref: '#/components/examples/ListTicketProblemsResponseExample'
  /api/v2/tickets/{ticket_id}/tags:
    parameters:
    - $ref: '#/components/parameters/TicketId'
    get:
      operationId: ListResourceTags
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Ticket_id Tags
      description: '#### Allowed For


        * Agents

        '
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagsByObjectIdResponse'
              examples:
                default:
                  $ref: '#/components/examples/TagsByObjectIdResponse'
    post:
      operationId: SetTagsTicket
      tags:
      - Tickets
      summary: Zendesk Post  Api V2 Tickets Ticket_id Tags
      description: '#### Allowed For


        * Agents

        '
      responses:
        '201':
          description: Created response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagsByObjectIdResponse'
              examples:
                default:
                  $ref: '#/components/examples/TagsByObjectIdResponse'
    put:
      operationId: PutTagsTicket
      tags:
      - Tickets
      summary: Zendesk Put  Api V2 Tickets Ticket_id Tags
      description: "You can also add tags to multiple tickets with the [Update Many\nTickets](/api-reference/ticketing/tickets/tickets/#update-many-tickets) endpoint.\n\n#### Safe Update\n\nIf the same ticket is updated by multiple API requests at\nthe same time, some tags could be lost because of ticket\nupdate collisions. Include `updated_stamp` and `safe_update`\nproperties in the request body to make a safe update.\n\nFor `updated_stamp`, retrieve and specify the ticket's\nlatest `updated_at` timestamp. The tag update only occurs\nif the `updated_stamp` timestamp matches the ticket's\nactual `updated_at` timestamp at the time of the request.\nIf the timestamps don't match (in other words, if the\nticket was updated since you retrieved the ticket's\nlast `updated_at` timestamp), the request returns a\n409 Conflict error.\n\n#### Example\n\n```js\n{\n  \"tags\": [\"customer\"],\n  \"updated_stamp\":\"2019-09-12T21:45:16Z\",\n  \"safe_update\":\"true\"\n}\n```\n\nFor details, see [Protecting against ticket update collisions](/api-reference/ticketing/tickets/tickets/#protecting-against-ticket-update-collisions).\n\n#### Allowed For\n\n* Agents\n"
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagsByObjectIdResponse'
              examples:
                default:
                  $ref: '#/components/examples/TagsByObjectIdResponse'
    delete:
      operationId: DeleteTagsTicket
      tags:
      - Tickets
      summary: Zendesk Delete  Api V2 Tickets Ticket_id Tags
      description: 'You can also delete tags from multiple tickets with the

        [Update Many Tickets](/api-reference/ticketing/tickets/tickets/#update-many-tickets) endpoint.


        This endpoint supports safe updates. See [Safe Update](/api-reference/ticketing/ticket-management/tags/#safe-update).


        #### Allowed For


        * Agents

        '
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagsByObjectIdResponse'
              examples:
                default:
                  $ref: '#/components/examples/TagsRemoveResponseExample'
  /api/v2/tickets:
    get:
      operationId: ListTickets
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets
      parameters:
      - name: external_id
        in: query
        description: Lists tickets by external id. External ids don't have to be unique for each ticket. As a result, the request may return multiple tickets with the same external id.
        schema:
          type: string
      responses:
        '200':
          description: List tickets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketsResponse'
              examples:
                default:
                  $ref: '#/components/examples/TicketsResponseExample'
    post:
      operationId: CreateTicket
      tags:
      - Tickets
      summary: Zendesk Post  Api V2 Tickets
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TicketCreateRequest'
            examples:
              default:
                $ref: '#/components/examples/TicketCreateRequestExample'
      responses:
        '201':
          description: Create ticket
          headers:
            Location:
              description: The URL of the created ticket
              schema:
                type: string
                format: url
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketResponse'
              examples:
                default:
                  $ref: '#/components/examples/TicketResponseExample'
  /api/v2/tickets/{ticket_id}:
    get:
      operationId: ShowTicket
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Ticket_id
      description: 'Returns a number of ticket properties though not the ticket comments. To get the comments, use [List Comments](/api-reference/ticketing/tickets/ticket_comments/#list-comments)


        #### Allowed For

        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Ticket
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketResponse'
              examples:
                default:
                  $ref: '#/components/examples/TicketResponseExample'
    put:
      operationId: UpdateTicket
      tags:
      - Tickets
      summary: Zendesk Put  Api V2 Tickets Ticket_id
      parameters:
      - $ref: '#/components/parameters/TicketId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TicketUpdateRequest'
            examples:
              default:
                $ref: '#/components/examples/TicketUpdateRequestExample'
      responses:
        '200':
          description: Successful request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketUpdateResponse'
              examples:
                default:
                  $ref: '#/components/examples/TicketUpdateResponseExample'
    delete:
      operationId: DeleteTicket
      tags:
      - Tickets
      summary: Zendesk Delete  Api V2 Tickets Ticket_id
      description: '#### Allowed For


        * Admins

        * Agents with permission to delete tickets


        Agent delete permissions are set in Support. See

        [Deleting tickets](https://support.zendesk.com/hc/en-us/articles/203690936)

        in the Support Help Center.


        #### Ticket deletion rate limit


        You can delete 400 tickets every 1 minute using this endpoint.

        The rate limiting mechanism behaves as described in

        [Rate limits](/api-reference/introduction/rate-limits/) in the API introduction.

        Zendesk recommends that you obey the Retry-After header values.

        To delete many tickets, you may use [Bulk Delete Tickets](/api-reference/ticketing/tickets/tickets/#bulk-delete-tickets).'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '204':
          description: No content
  /api/v2/tickets/{ticket_id}/collaborators:
    get:
      operationId: ListTicketCollaborators
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Ticket_id Collaborators
      description: '#### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTicketCollaboratorsResponse'
              examples:
                default:
                  $ref: '#/components/examples/ListTicketCollaboratorsResponseExample'
  /api/v2/tickets/{ticket_id}/email_ccs:
    get:
      operationId: ListTicketEmailCCs
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Ticket_id Email_ccs
      description: 'Returns any users cc''d on the ticket.


        #### Availability


        The [CCs and Followers](https://support.zendesk.com/hc/en-us/articles/203690846) feature must be enabled in Zendesk Support.


        If the feature is not enabled, the default CC functionality is used. In that case, use [List Collaborators](/api-reference/ticketing/tickets/tickets/#list-collaborators-for-a-ticket) to list the users cc''ed on the ticket.


        #### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTicketEmailCCsResponse'
              examples:
                default:
                  $ref: '#/components/examples/ListTicketEmailCCsResponseExample'
  /api/v2/tickets/{ticket_id}/followers:
    get:
      operationId: ListTicketFollowers
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Ticket_id Followers
      description: 'Returns any users who follow the ticket.


        #### Availability


        The [CCs and Followers](https://support.zendesk.com/hc/en-us/articles/203690846) feature must be enabled in Zendesk Support.


        #### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTicketFollowersResponse'
              examples:
                default:
                  $ref: '#/components/examples/ListTicketFollowersResponseExample'
  /api/v2/tickets/{ticket_id}/incidents:
    get:
      operationId: ListTicketIncidents
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Ticket_id Incidents
      description: '#### Allowed For


        * Agents


        #### Pagination

        * Cursor pagination (recommended)

        * Offset pagination


        See [Pagination](/api-reference/introduction/pagination/).'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTicketIncidentsResponse'
              examples:
                default:
                  $ref: '#/components/examples/ListTicketIncidentsResponseExample'
  /api/v2/tickets/{ticket_id}/mark_as_spam:
    put:
      operationId: MarkTicketAsSpamAndSuspendRequester
      tags:
      - Tickets
      summary: Zendesk Put  Api V2 Tickets Ticket_id Mark_as_spam
      description: '#### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: string
                example: ''
              example: ''
  /api/v2/tickets/{ticket_id}/merge:
    post:
      operationId: MergeTicketsIntoTargetTicket
      tags:
      - Tickets
      summary: Zendesk Post  Api V2 Tickets Ticket_id Merge
      description: "Merges one or more tickets into the ticket with the specified id.\n\nSee [Merging tickets](https://support.zendesk.com/hc/en-us/articles/203690916)\nin the Support Help Center for ticket merging rules.\n\nAny attachment to the source ticket is copied to the target ticket.\n\nThis endpoint returns a `job_status` [JSON object](/api-reference/ticketing/ticket-management/job_statuses/#json-format) and queues a background job to do the work. Use the [Show Job Status](/api-reference/ticketing/ticket-management/job_statuses/#show-job-status) endpoint to check for the job's completion. Only a certain number of jobs can be queued or running at the same time. See [Job limit](/api-reference/introduction/rate-limits/#job-limit) for more information.\n\n#### Allowed For\n\n* Agents\n\nAgents in the Enterprise account must have merge permissions.\nSee [Creating custom roles and assigning agents (Enterprise)](https://support.zendesk.com/hc/en-us/articles/203662026)\nin the Support Help Center.\n\n#### Available parameters\n\nThe request takes a data object with the following properties:\n\n| Name                     | Type    | Required | Comments                                                |\n| ------------------------ | ------- | -------- | ------------------------------------------------------- |\n| ids                      | array   | yes      | Ids of tickets to merge into the target ticket          |\n| target_comment           | string  | no       | Private comment to add to the target ticket. This comment is optional but strongly recommended |\n| source_comment           | string  | no       | Private comment to add to the source ticket. This comment is optional but strongly recommended |\n| target_comment_is_public | boolean | no       | Whether comments in the target ticket are public or private   |\n| source_comment_is_public | boolean | no       | Whether comments in the source tickets are public or private |\n\n`target_comment` and `source_comment` can be used to provide a reason for the merge for recordkeeping purposes. If the source ticket has attachments, they are included in `target_comment`.\n\nComments are private and can't be modified in the following cases:\n\n  * Any of the sources or target tickets are private\n  * Any of the sources or target tickets were created through X (formerly Twitter), Facebook or the Channel framework\n\nIn any other case, comments default to private but can be modified with the comment privacy parameters."
      parameters:
      - $ref: '#/components/parameters/TicketId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TicketMergeInput'
            examples:
              default:
                $ref: '#/components/examples/TicketMergeInputExample'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                default:
                  $ref: '#/components/examples/JobStatusResponseExample'
  /api/v2/tickets/{ticket_id}/related:
    get:
      operationId: TicketRelatedInformation
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Ticket_id Related
      description: 'The request returns a data object with the following properties:


        | Name                | Type    | Comment

        | ------------------- | ------- | -------

        | topic_id            | string  | Related topic in the Web portal (deprecated feature)

        | jira_issue_ids      | array   | Array of associated jira issues

        | followup_source_ids | array   | Sources to follow up

        | from_archive        | boolean | Is true if the current ticket is archived

        | incidents           | integer | A count of related incident occurrences


        #### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketId'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketRelatedInformation'
              examples:
                default:
                  $ref: '#/components/examples/TicketRelatedInformationExample'
  /api/v2/tickets/count:
    get:
      operationId: CountTickets
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Count
      description: 'Returns an approximate count of tickets in the account. If the count exceeds 100,000, it is updated every 24 hours.


        `ccd` lists tickets that the specified user is cc''d on.


        The `count[refreshed_at]` property is a timestamp that indicates when the count was last updated.


        **Note**: When the count exceeds 100,000, `count[refreshed_at]` may occasionally be null.

        This indicates that the count is being updated in the background, and `count[value]` is limited to 100,000 until the update is complete.


        #### Allowed For

        * Agents'
      responses:
        '200':
          description: Count of tickets
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: object
                    properties:
                      refreshed_at:
                        type: string
                        format: date-time
                      value:
                        type: integer
              examples:
                default:
                  value:
                    count:
                      refreshed_at: '2020-04-06T02:18:17Z'
                      value: 102
  /api/v2/tickets/create_many:
    post:
      operationId: TicketsCreateMany
      tags:
      - Tickets
      summary: Zendesk Post  Api V2 Tickets Create_many
      description: 'Accepts an array of up to 100 ticket objects. **Note**: Every ticket created with this endpoint may be affected by your business rules, which can include sending email notifications to your end users. If you are importing historical tickets or creating more than 1000 tickets, consider using the [Ticket Bulk Import](/api-reference/ticketing/tickets/ticket_import/#ticket-bulk-import) endpoint.


        This endpoint returns a `job_status` [JSON object](/api-reference/ticketing/ticket-management/job_statuses/#json-format) and queues a background job to do the work. Use the [Show Job Status](/api-reference/ticketing/ticket-management/job_statuses/#show-job-status) endpoint to check for the job''s completion. Only a certain number of jobs can be queued or running at the same time. See [Job limit](/api-reference/introduction/rate-limits/#job-limit) for more information.


        #### Allowed For

        * Agents'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TicketsCreateRequest'
            examples:
              default:
                $ref: '#/components/examples/TicketsCreateRequestExample'
      responses:
        '200':
          description: Create many tickets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                default:
                  $ref: '#/components/examples/JobStatusResponseExample'
  /api/v2/tickets/destroy_many:
    delete:
      operationId: BulkDeleteTickets
      tags:
      - Tickets
      summary: Zendesk Delete  Api V2 Tickets Destroy_many
      description: 'Accepts a comma-separated list of up to 100 ticket ids.


        #### Allowed For


        * Admins

        * Agents with permission to delete tickets


        Agent delete permissions are set in Support. See

        [Deleting tickets](https://support.zendesk.com/hc/en-us/articles/203690936)

        in the Support Help Center.


        This endpoint returns a `job_status` [JSON object](/api-reference/ticketing/ticket-management/job_statuses/#json-format) and queues a background job to do the work. Use the [Show Job Status](/api-reference/ticketing/ticket-management/job_statuses/#show-job-status) endpoint to check for the job''s completion. Only a certain number of jobs can be queued or running at the same time. See [Job limit](/api-reference/introduction/rate-limits/#job-limit) for more information.'
      parameters:
      - $ref: '#/components/parameters/TicketIds'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                default:
                  $ref: '#/components/examples/JobStatusResponseExample'
  /api/v2/tickets/mark_many_as_spam:
    put:
      operationId: MarkManyTicketsAsSpam
      tags:
      - Tickets
      summary: Zendesk Put  Api V2 Tickets Mark_many_as_spam
      description: 'Accepts a comma-separated list of up to 100 ticket ids.


        This endpoint returns a `job_status` [JSON object](/api-reference/ticketing/ticket-management/job_statuses/#json-format) and queues a background job to do the work. Use the [Show Job Status](/api-reference/ticketing/ticket-management/job_statuses/#show-job-status) endpoint to check for the job''s completion. Only a certain number of jobs can be queued or running at the same time. See [Job limit](/api-reference/introduction/rate-limits/#job-limit) for more information.


        #### Allowed For


        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketIds'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                default:
                  $ref: '#/components/examples/JobStatusResponseExample'
  /api/v2/tickets/show_many:
    get:
      operationId: TicketsShowMany
      tags:
      - Tickets
      summary: Zendesk Get  Api V2 Tickets Show_many
      description: 'Accepts a comma-separated list of ticket ids to return.


        This endpoint will return up to 100 tickets records.


        #### Allowed For

        * Agents'
      parameters:
      - $ref: '#/components/parameters/TicketIds'
      responses:
        '200':
          description: List tickets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TicketsResponse'
              examples:
                default:
                  $ref: '#/components/examples/TicketsResponseExample'
  /api/v2/tickets/update_many:
    put:
      operationId: TicketsUpdateMany
      tags:
      - Tickets
      summary: Zendesk Put  Api V2 Tickets Update_many
      description: Accepts an array of up to 100 ticket objects, or a comma-separated list of up to 100 ticket ids.
      parameters:
      - name: ids
        in: query
        description: Comma-separated list of ticket ids
        schema:
          type: string
        example: 35436,35437
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobStatusResponse'
              examples:
                default:
                  $ref: '#/components/examples/JobStatusResponseExample'
  /tickets:
    get:
      operationId: listTickets
      summary: Zendesk List Tickets
      description: Returns a paginated list of tickets in the account. Tickets are sorted by created date in ascending order by default. Supports sideloading of related users, groups, and organizations.
      tags:
      - Tickets
      parameters:
      - $ref: '#/components/parameters/PageParam'
      - $re

# --- truncated at 32 KB (72 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zendesk/refs/heads/main/openapi/zendesk-tickets-api-openapi.yml