Tickets
Create, read, update, delete, and search HubSpot tickets with pipeline management
6 tools
Create Ticket
POST /v1/tools/hubspot/createTicket
Create a new ticket in HubSpot. Returns the ticket ID. PREREQUISITE: Call hubspot_getProperties(object_type: "tickets") first to get available property names and types — do NOT guess. Call hubspot_getTicketPipelines to get pipeline and stage IDs before setting hs_pipeline and hs_pipeline_stage. Properties are passed as a flat object keyed by property name. All values must be strings. Common properties: subject, content, hs_pipeline, hs_pipeline_stage, hs_ticket_priority, hs_ticket_category. For enumeration properties, use the internal value (not label) — check getProperties for valid options. For multi-select, separate values with semicolons: "value1;value2".
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
values | object | required | Ticket properties keyed by property name. All values as strings. E.g., {"subject": "Login issue", "content": "User cannot log in", "hs_pipeline": "0", "hs_pipeline_stage": "1", "hs_ticket_priority": "HIGH"} |
id_only | boolean | optional | Return only the ticket ID (default: true). Set to false for full response. |
Flags
| Name | Type | Description |
|---|---|---|
id_only | boolean | Return only the ticket ID (default: true). Set to false for full response. |
Request
curl -X POST https://api.syncello.io/v1/tools/hubspot/createTicket \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"values": "..."
}'Response
{
"id": "812300140004"
} Try It
Try it
Sign in to execute this tool
Sign InGet Ticket
POST /v1/tools/hubspot/getTicket
Get a HubSpot ticket by ID. Returns ticket properties. By default returns common properties (subject, content, hs_pipeline, hs_pipeline_stage, hs_ticket_priority, createdate). Use the "properties" parameter to request specific properties. Use hubspot_getProperties(object_type: "tickets") to see all available property names.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
ticket_id | string | required | The HubSpot ticket ID |
return_properties | array | optional | Specific property names to return. If omitted, returns default properties. |
Request
curl -X POST https://api.syncello.io/v1/tools/hubspot/getTicket \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"ticket_id": "example"
}'Response
{
"id": "812300140004",
"properties": {
"content": "Login page returns a 500 for SSO users.",
"createdate": "2026-07-01T18:34:04.400Z",
"hs_lastmodifieddate": "2026-07-01T18:34:07.427Z",
"hs_object_id": "812300140004",
"hs_pipeline": "0",
"hs_pipeline_stage": "1",
"hs_ticket_priority": "HIGH",
"subject": "SSO login returns 500"
},
"createdAt": "2026-07-01T18:34:04.400Z",
"updatedAt": "2026-07-01T18:34:07.427Z",
"archived": false,
"url": "https://app.hubspot.com/contacts/12345678/record/0-5/812300140004"
} Try It
Try it
Sign in to execute this tool
Sign InUpdate Ticket
POST /v1/tools/hubspot/updateTicket
Update an existing HubSpot ticket. Pass only the properties you want to change — other properties remain unchanged. All values must be strings. PREREQUISITE: Call hubspot_getProperties(object_type: "tickets") to check property names and types before updating. Call hubspot_getTicketPipelines to get valid pipeline stage IDs if changing hs_pipeline_stage.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
ticket_id | string | required | The HubSpot ticket ID to update |
values | object | required | Properties to update, keyed by property name. All values as strings. |
Request
curl -X POST https://api.syncello.io/v1/tools/hubspot/updateTicket \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"ticket_id": "example",
"values": "..."
}'Response
{
"id": "812300140004",
"updated": true
} Try It
Try it
Sign in to execute this tool
Sign InDelete Ticket
POST /v1/tools/hubspot/deleteTicket
Delete a HubSpot ticket by ID. This moves the ticket to the recycling bin (recoverable for a limited time). This action cannot be easily undone.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
ticket_id | string | required | The HubSpot ticket ID to delete |
Request
curl -X POST https://api.syncello.io/v1/tools/hubspot/deleteTicket \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
-d '{
"ticket_id": "example"
}'Response
{
"deleted": true,
"ticketId": "812300140004"
} Try It
Try it
Sign in to execute this tool
Sign InSearch Tickets
POST /v1/tools/hubspot/searchTickets
Search HubSpot tickets using filters and sorting. Supports filtering by any property. Filter operators: EQ (equals), NEQ, LT, LTE, GT, GTE, CONTAINS_TOKEN (word search), NOT_CONTAINS_TOKEN, IN (array), NOT_IN, HAS_PROPERTY, NOT_HAS_PROPERTY, BETWEEN. Multiple filters in the same group are ANDed. Multiple filter groups are ORed. Returns up to 100 results per page with paging cursor.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
filter_groups | array | optional | Array of filter groups (ORed together). Each group has a "filters" array (ANDed together). Each filter: { propertyName: string, operator: string, value: string }. Example: [{ "filters": [{ "propertyName": "hs_ticket_priority", "operator": "EQ", "value": "HIGH" }] }] |
sorts | array | optional | Sort by property. E.g., [{ "propertyName": "createdate", "direction": "DESCENDING" }] |
return_properties | array | optional | Properties to include in results. Defaults to subject, hs_pipeline_stage, hs_ticket_priority, createdate. |
limit | number | optional | Max results to return (1-100, default 10) |
after | string | optional | Paging cursor from previous search result for next page |
query | string | optional | Simple text search query (searches across default searchable properties) |
Request
curl -X POST https://api.syncello.io/v1/tools/hubspot/searchTickets \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Response
{
"total": 1,
"count": 1,
"results": [
{
"id": "812300140004",
"properties": {
"content": "Login page returns a 500 for SSO users.",
"createdate": "2026-07-01T18:34:04.400Z",
"hs_lastmodifieddate": "2026-07-01T18:34:55.848Z",
"hs_object_id": "812300140004",
"hs_pipeline": "0",
"hs_pipeline_stage": "2",
"hs_ticket_priority": "MEDIUM",
"subject": "SSO login returns 500"
}
}
]
} Try It
Try it
Sign in to execute this tool
Sign InGet Ticket Pipelines
POST /v1/tools/hubspot/getTicketPipelines
List all ticket pipelines and their stages. Use this BEFORE creating or updating tickets to get the correct pipeline ID and stage IDs. The hs_pipeline property requires the pipeline ID and hs_pipeline_stage requires the internal stage ID (not the label). Returns pipelines with their stages in display order.
Request
curl -X POST https://api.syncello.io/v1/tools/hubspot/getTicketPipelines \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Response
{
"pipelines": [
{
"id": "0",
"label": "Support Pipeline",
"displayOrder": 0,
"stages": [
{
"id": "1",
"label": "New",
"displayOrder": 0,
"metadata": {
"ticketState": "OPEN",
"isClosed": "false"
}
},
{
"id": "4",
"label": "Closed",
"displayOrder": 3,
"metadata": {
"ticketState": "CLOSED",
"isClosed": "true"
}
}
]
}
]
} Try It
Try it
Sign in to execute this tool
Sign In