InTouch Hub · Blue Isle Software

HubSpot Service Hub

Manage support tickets and conversations via the HubSpot Service Hub tickets API.

Provided free and as is, without warranty of any kind — including merchantability, fitness for a particular purpose, and the accuracy or completeness of any result. See the licence. You are responsible for checking what this produces before relying on it.

hubspotpipelinereportsearchstatussupport-helpdeskticket

HubSpot Service Hub

Manage support tickets via the HubSpot CRM v3 tickets API.

Operations

Operation What it does
list_tickets List tickets with key properties (subject, stage, priority, dates)
get_ticket Retrieve a single ticket by id
create_ticket Create a new ticket with subject, content, stage, and priority
update_ticket Update subject, content, pipeline stage, or priority on an existing ticket
search_tickets Full-text search across tickets by query string, or filter by subject keyword

API Key Setup

  1. In HubSpot, go to Settings > Integrations > Private Apps.
  2. Create a new private app.
  3. Under Scopes, enable CRM → Tickets (read + write).
  4. Click Create app and copy the Access Token.
  5. Pass that token as apiKey. It is sent as Authorization: Bearer <token>.

Parameters

Parameter Required Default Notes
apiKey Yes — HubSpot private app access token
operation Yes — One of the five operations above
ticketId For get/update — HubSpot ticket object id
subject For create; optional for update/search — Ticket subject line
content Optional — Ticket body / description
status Optional 1 (New) for create Pipeline stage id (1=New, 2=Waiting on contact, 3=Waiting on us, 4=Closed)
priority Optional — LOW, MEDIUM, or HIGH
query For search — Free-text query matched against subject and content
limit Optional 10 1–100 records

Examples

List open tickets:

operation: list_tickets
apiKey: pat-na1-...
limit: 20

Get a ticket by id:

operation: get_ticket
apiKey: pat-na1-...
ticketId: 12345678

Create a new ticket:

operation: create_ticket
apiKey: pat-na1-...
subject: "Login page returns 500 error"
content: "Users report intermittent 500 errors on /login since 14:00 UTC."
priority: HIGH
status: "1"

Update a ticket's stage to Closed (stage id 4):

operation: update_ticket
apiKey: pat-na1-...
ticketId: 12345678
status: "4"

Search tickets by keyword:

operation: search_tickets
apiKey: pat-na1-...
query: "login error"
limit: 10

Output

Field Description
result Raw JSON response from the HubSpot API
status HTTP status code (200/201 = success, 4xx = client error, 5xx = server error)

Notes

Publishes

The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.

Input Properties

Every property this tool accepts, from its own tool.iml.

Property Type Required Default Description
apiKey string yes — HubSpot private app access token. Create one at HubSpot > Settings > Integrations > Private Apps, then copy the access token (sent as 'Authorization: Bearer '). Required scope: tickets (read + write).
operation string yes — One of: list_tickets, get_ticket, create_ticket, update_ticket, search_tickets
ticketId string no — Ticket object id — required for get_ticket and update_ticket.
subject string no — Ticket subject line — used as a property for create_ticket and update_ticket.
content string no — Ticket body / description — used as a property for create_ticket and update_ticket.
status string no — Pipeline stage name or id (e.g. '1' for New, '2' for Waiting on contact) — used for create_ticket and update_ticket as hs_pipeline_stage.
priority string no — Ticket priority for create_ticket / update_ticket. One of: LOW, MEDIUM, HIGH.
query string no — Free-text search string for search_tickets (matched against subject and content).
limit string no 10 Max records to return for list_tickets and search_tickets (1-100).