---
title: Unified Ticketing API — Truto Unified API
slug: ticketing
canonical: "https://truto.one/unified-apis/ticketing/"
---

# Issue Tracking & Support Unified API

Integrate Issue Tracking & Support data across 59 providers with one API. 17 normalized resources, real-time pass-through, fully customizable.

**Base URL:** `https://api.truto.one/unified/ticketing`  
**Resources:** 17  
**Integrations:** 59

## Resources

### Accounts

Accounts represent the companies or organizations that you are in contact with. Accounts have one or more Contacts associated with them. (6 fields)

- `id` (string) — The unique identifier for an account
- `name` (string) — The name of the account
- `domains` (array) — Domains associated with the account
- `updated_at` (string) — The date and time of the account's last update
- `created_at` (string) — The date and time of the account's creation
- `etag` (string) — The unique identifier for the specific version of the resource.

### Attachments

Attachments are the files associated with a ticket or a comment. (11 fields)

- `id` (string) — The unique identifier for the attachment
- `file_name` (string) — The attachment's name.
- `ticket_id` (string) — The ticket id to which the attachment belongs
- `size` (number) — The file size in bytes
- `file_url` (string) — The URL to download the attachment
- `content_type` (string) — The content type of the attachment
- `uploaded_by` (string) — The user who uploaded the attachment
- `uploaded_by_type` (string) — The type of the user who uploaded the attachment
- `created_at` (string) — The time when the attachment was created
- `updated_at` (string) — The time when the attachment was updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Collections

Tickets and contacts can be grouped into Collections. Collection resource usually maps to the various grouping systems used in the underlying product. Some examples are lists, projects, epics, etc. You can differentiate between these grouping systems using the type attribute of a Collection. (11 fields)

- `id` (string) — The unique identifier for a collection
- `name` (string) — The name of the collection
- `description` (string) — The description of the collection
- `type` (string) — The type of the collection
- `parent_collection_id` (string) — The parent collection id
- `urls` (array) — The URLs of the collection
- `workspace` (object) — 
- `created_at` (string) — The date and time when the collection was created
- `updated_at` (string) — The date and time when the collection was updated
- `etag` (string) — The unique identifier for the specific version of the resource.
- `entity_type` (string) — The type of entity that belongs to this collection

### Comments

Comments represent the communication happening on a Ticket, both between a User and a Contact and the internal things like notes, private comments, etc. A Ticket can have one or more Comments. (13 fields)

- `id` (string) — The unique identifier for a comment
- `author` (object) — The id of the user or contact who created the comment
- `receiver` (object) — The id of the user or contact who is receiving the comment
- `body` (string) — The body of the comment
- `html_body` (string) — The body of the comment in HTML format
- `ticket` (object) — The ticket to which the comment belongs
- `attachments` (array) — The attachments of the comment
- `is_internal` (boolean) — Whether the comment is internal. True for internal notes left by users.
- `is_private` (boolean) — Whether the comment is private or not
- `channel` (object) — The medium through which the comment was sent.
- `created_at` (string) — The date and time when the comment was created
- `updated_at` (string) — The date and time when the comment was updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Contacts

Contact represent the external people you are in contact with. These could be customers, leads, etc. Contacts can be associated with an Account if the underlying product supports it. (13 fields)

- `id` (string) — The unique identifier for a contact
- `first_name` (string) — The first name of the contact
- `last_name` (string) — The last name of the contact
- `name` (string) — The name of the contact
- `emails` (array) — The emails of the contact
- `phones` (array) — The phone numbers of the contact
- `details` (string) — The details of the contact
- `account_id` (string) — The account id of the contact
- `created_at` (string) — The date the contact was created
- `updated_at` (string) — The date the contact was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.
- `custom_fields` (object) — All the custom fields present on the contact
- `is_active` (boolean) — Whether the contact is active or not

### Fields

Fields represent the attributes defined for various entities in the underlying product. Depending on the underlying product, custom attributes can be defined by a User on various entities like Ticket, Contact, etc. is_user_defined attribute within Field can be used to differentiate between custom and system defined Fields. (20 fields)

- `id` (string) — The field's unique identifier
- `name` (string) — The field's name. This is the name of the property in the entity.
- `label` (string) — The field's label
- `description` (string) — The field's description
- `type` (string) — The field's type. If no clear mapping exists, then raw value is returned.
- `format` (string) — The field's format.
- `is_hidden` (boolean) — Whether the field is hidden
- `is_unique` (boolean) — Whether the field is unique
- `is_required` (boolean) — Whether the field is required
- `options` (array) — The field's options
- `is_user_defined` (boolean) — Whether the field is user defined
- `entity_type` (string) — The entity type the field belongs to
- `entity_id` (string) — The unique identifier for the entity the field belongs to
- `created_at` (string) — The date and time of the field's creation
- `updated_at` (string) — The date and time of the field's last update
- `etag` (string) — The unique identifier for the specific version of the resource.
- `applicable_in` (string) — The context in which the field is applicable
- `applicable_for` (string) — The unique identifier of the applicable
- `ticket_type` (string) — The ticket_type's unique identifier
- `status` (string) — The status of the field

### Organizations

Organization represents the company or the entity using the ticketing system. An Organization can have one or more Workspaces and Users. (5 fields)

- `id` (string) — The ID of the organization
- `name` (string) — The name of the organization
- `created_at` (string) — The date and time the organization was created
- `updated_at` (string) — The date and time the organization was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Tags

Tags represent a common classification approach used in various ticketing systems. A Ticket may have one or more Tags associated with them. (9 fields)

- `id` (string) — The unique identifier for a tag
- `name` (string) — The name of the tag
- `color` (string) — Color of the tag. In hex format.
- `workspace` (object) — The workspace the tag belongs to
- `created_at` (string) — The date the tag was created
- `updated_at` (string) — The date the tag was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.
- `status` (string) — The status of the tag. If no clear mapping is available, then the raw value is returned.
- `parent` (object) — The parent tag of this tag

### Task Lists

Task Lists represent a collection of Tasks on a Ticket. (7 fields)

- `id` (string) — The unique identifier for the task list
- `name` (string) — The name of the task list
- `ticket` (object) — The ticket the task list is associated with
- `tasks` (array) — The tasks in the task list
- `created_at` (string) — The date and time the task list was created
- `updated_at` (string) — The date and time the task list was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Tasks

Task represent a smaller subdivision of a Ticket, which could be the list of things to do in a Ticket. (11 fields)

- `id` (string) — The unique identifier for the task
- `name` (string) — The name of the task
- `assignees` (array) — The users assigned to the task
- `description` (string) — The description of the task
- `due_date` (string) — The due date of the task
- `ticket` (object) — The ticket the task is associated with
- `task_list` (object) — The task list the task is associated with
- `status` (object) — The status of the task
- `created_at` (string) — The date and time the task was created
- `updated_at` (string) — The date and time the task was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Teams

Teams represent the grouping system used for Users. These are usually called groups, teams, agent groups, etc. in the underlying products. A User can belong to one or more Teams. (6 fields)

- `id` (string) — The unique identifier for a team
- `name` (string) — The name of the team
- `description` (string) — The description of the team
- `created_at` (string) — The date the team was created
- `updated_at` (string) — The date the team was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Ticket Priorities

Ticket Priorities represent the intended order in which the Tickets should be worked on. Some products provide customizing the Ticket Priorities. (4 fields)

- `id` (string) — The priority's unique identifier
- `name` (string) — The priority's name
- `description` (string) — The priority's description
- `etag` (string) — The unique identifier for the specific version of the resource.

### Ticket Status

Ticket Status represents the completion level of the Ticket. Some products provide customizing the Ticket Status. (4 fields)

- `id` (string) — The status's unique identifier
- `name` (string) — The status's name
- `description` (string) — The status's description
- `etag` (string) — The unique identifier for the specific version of the resource.

### Ticket Types

Ticket Types represent the classification system used by the underlying products for Tickets. Some examples are bugs, feature, incident, etc. (7 fields)

- `id` (string) — The ticket type's unique identifier
- `name` (string) — The ticket type's name
- `description` (string) — The ticket type's description
- `project` (string) — The ticket type's project
- `created_at` (string) — The date and time the ticket type was created
- `updated_at` (string) — The date and time the ticket type was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Tickets

Core resource which represents some work that needs to be carried out. Tickets are usually mapped to issues, tasks, work items, etc. depending on the underlying product. (29 fields)

- `id` (string) — The unique identifier for a ticket
- `name` (string) — The name of the ticket
- `number` (string) — An optional ticket number maintained by the system.
- `assignees` (array) — Users assigned to the ticket
- `status` (object) — The status of the ticket
- `created_by` (object) — User or contact who created the ticket
- `due_date` (string) — Due date of the ticket
- `description` (string) — Description of the ticket
- `workspace` (object) — Workspace associated with the ticket
- `team` (object) — Team associated with the ticket
- `collections` (array) — Collections associated with the ticket
- `conversations` (array) — Conversations associated with the ticket
- `ticket_type` (object) — Type of the ticket
- `contact` (object) — Contact associated with the ticket
- `additional_contacts` (array) — Additional Contacts associated with the ticket
- `account` (object) — Account associated with the ticket
- `parent_ticket` (object) — Parent ticket associated with the ticket
- `attachments` (array) — Attachments associated with the ticket
- `tags` (array) — Tags associated with the ticket
- `created_at` (string) — Time at which the ticket was created
- `updated_at` (string) — Time at which the ticket was last updated
- `completed_at` (string) — Time at which the ticket was completed
- `ticket_url` (string) — URL of the ticket
- `priority` (object) — Priority of the ticket
- `languages` (array) — Languages of the ticket
- `is_unread` (boolean) — Whether the ticket is unread
- `source` (object) — The source of the ticket
- `custom_fields` (object) — All the custom fields present on the ticket
- `etag` (string) — The unique identifier for the specific version of the resource.

### Users

Users represent the people using the underlying ticketing system. They are usually called agents, team members, admins, etc. (13 fields)

- `id` (string) — The user's unique identifier
- `name` (string) — The user's name
- `first_name` (string) — The user's first name
- `last_name` (string) — The user's last name
- `username` (string) — The user's username
- `emails` (array) — The user's email addresses
- `is_active` (boolean) — Whether the user is active or not
- `team_ids` (array) — The IDs of the teams the user is a member of
- `avatar` (string) — The URL of the user's avatar
- `roles` (array) — The roles the user has
- `created_at` (string) — The date and time the user was created
- `updated_at` (string) — The date and time the user was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.

### Workspaces

Workspaces represent the top-level subdivision in a ticketing system. They usually have their own set of settings, tickets, statuses, priorities and users. Some of the usual terminologies used by the products for the top-level subdivision are projects, bases, spaces, workspace, etc. A Workspace could belong to an Organization. (7 fields)

- `id` (string) — The ID of the workspace
- `name` (string) — The name of the workspace
- `status` (string) — The status of the workspace
- `description` (string) — The description of the workspace
- `created_at` (string) — The date and time the workspace was created
- `updated_at` (string) — The date and time the workspace was last updated
- `etag` (string) — The unique identifier for the specific version of the resource.

## Supported integrations

- [Accelo](https://truto.one/integrations/detail/accelo/)
- [Airtable](https://truto.one/integrations/detail/airtable/)
- [Asana](https://truto.one/integrations/detail/asana/)
- [Azure DevOps](https://truto.one/integrations/detail/azuredevops/)
- [Basecamp](https://truto.one/integrations/detail/basecamp/)
- [Bitbucket](https://truto.one/integrations/detail/bitbucket/)
- [BMC Helix](https://truto.one/integrations/detail/bmchelix/)
- [ClickUp](https://truto.one/integrations/detail/clickup/)
- [Dixa](https://truto.one/integrations/detail/dixa/)
- [eDesk](https://truto.one/integrations/detail/edesk/)
- [Enchant](https://truto.one/integrations/detail/enchant/)
- [Freshchat](https://truto.one/integrations/detail/freshchat/)
- [Freshdesk](https://truto.one/integrations/detail/freshdesk/)
- [Freshservice](https://truto.one/integrations/detail/freshservice/)
- [Front](https://truto.one/integrations/detail/front/)
- [FuseDesk](https://truto.one/integrations/detail/fusedesk/)
- [GitLab](https://truto.one/integrations/detail/gitlab/)
- [Gladly](https://truto.one/integrations/detail/gladly/)
- [Gorgias](https://truto.one/integrations/detail/gorgias/)
- [HappyFox](https://truto.one/integrations/detail/happyfox/)
- [Help Scout](https://truto.one/integrations/detail/helpscout/)
- [Helpshift](https://truto.one/integrations/detail/helpshift/)
- [Hive](https://truto.one/integrations/detail/hive/)
- [HubSpot](https://truto.one/integrations/detail/hubspot/)
- [Intercom](https://truto.one/integrations/detail/intercom/)
- [Jira](https://truto.one/integrations/detail/jira/)
- [Jira Service Management](https://truto.one/integrations/detail/jiraservicemanagement/)
- [Kustomer](https://truto.one/integrations/detail/kustomer/)
- [Linear](https://truto.one/integrations/detail/linear/)
- [LiveAgent](https://truto.one/integrations/detail/liveagent/)
- [LiveChat](https://truto.one/integrations/detail/livechat/)
- [Microsoft 365](https://truto.one/integrations/detail/microsoft/)
- [Microsoft Planner](https://truto.one/integrations/detail/microsoftplanner/)
- [Missive](https://truto.one/integrations/detail/missive/)
- [Monday.com](https://truto.one/integrations/detail/mondaycom/)
- [Pivotal Tracker](https://truto.one/integrations/detail/pivotaltracker/)
- [Planhat](https://truto.one/integrations/detail/planhat/)
- [Podium](https://truto.one/integrations/detail/podium/)
- [Productboard](https://truto.one/integrations/detail/productboard/)
- [Puzzel Case Management](https://truto.one/integrations/detail/puzzelcasemanagement/)
- [Qualtrics CoreXM](https://truto.one/integrations/detail/qualtricscorexm/)
- [Quickbase for Project Management](https://truto.one/integrations/detail/quickbaseprojectmanagement/)
- [Re:amaze](https://truto.one/integrations/detail/reamaze/)
- [Richpanel](https://truto.one/integrations/detail/richpanel/)
- [Salesforce](https://truto.one/integrations/detail/salesforce/)
- [ServiceNow](https://truto.one/integrations/detail/servicenow/)
- [Shortcut](https://truto.one/integrations/detail/shortcut/)
- [SolarWinds Service Desk](https://truto.one/integrations/detail/solarwindsservicedesk/)
- [Superchat](https://truto.one/integrations/detail/superchat/)
- [SurveySparrow Ticket Management](https://truto.one/integrations/detail/surveysparrowticketmanagement/)
- [Teamwork Project Management](https://truto.one/integrations/detail/teamworkproject/)
- [Todoist](https://truto.one/integrations/detail/todoist/)
- [Trello](https://truto.one/integrations/detail/trello/)
- [Trengo](https://truto.one/integrations/detail/trengo/)
- [Wrike](https://truto.one/integrations/detail/wrike/)
- [YouTrack](https://truto.one/integrations/detail/youtrack/)
- [Zendesk](https://truto.one/integrations/detail/zendesk/)
- [Zoho Desk](https://truto.one/integrations/detail/zohodesk/)
- [Zoho Projects](https://truto.one/integrations/detail/zohoprojects/)

## Related reading

- [What Are Helpdesk Integrations? (2026 Architecture & SaaS Guide)](https://truto.one/blog/what-are-helpdesk-integrations-2026-architecture-saas-guide/) — Helpdesk integrations connect your B2B SaaS product to Zendesk, Freshdesk, Intercom, and more. Learn the architecture, API quirks, and build vs. buy trade-offs.
- [Connect Zendesk to ChatGPT: Automate Ticket Support & Agent Tasks](https://truto.one/blog/connect-zendesk-to-chatgpt-automate-ticket-support-agent-tasks/) — Learn how to connect Zendesk to ChatGPT using a managed MCP server. Automate ticket triage, update statuses, and execute support workflows without custom code.
- [How to Build an AI Product That Auto-Responds to Zendesk and Jira Tickets](https://truto.one/blog/how-to-build-an-ai-product-that-auto-responds-to-zendesk-and-jira-tickets/) — Technical guide to building an AI auto-responder for Zendesk and Jira tickets — covering architecture, API quirks, rate limits, and how unified ticketing APIs accelerate shipping.
- [Connect Jira to ChatGPT: Automate Issue Tracking & Task Updates](https://truto.one/blog/connect-jira-to-chatgpt-automate-issue-tracking-task-updates/) — Learn how to connect Jira to ChatGPT using a managed Model Context Protocol (MCP) server. Automate ticket triage, issue updates, and IT workflows without building custom API integrations.
- [What Are Ticketing Integrations? (2026 Architecture & Strategy Guide)](https://truto.one/blog/what-are-ticketing-integrations-2026-architecture-strategy-guide/) — A deep dive into ticketing integrations for B2B SaaS. Architect scalable connections to Zendesk, Jira, and Linear for AI agents and sync workflows.
- [Connect Zendesk to Claude: Manage Help Center & Tickets via MCP](https://truto.one/blog/connect-zendesk-to-claude-manage-help-center-content-knowledge/) — Learn how to connect Zendesk to Claude using a managed MCP server. Automate ticket triage, update Help Center articles, and manage users without writing integration code.
