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).