Skip to main content

Create sales tickets

Create actionable tickets for sales reps in the Sales Hub. Tickets flag situations that need attention, such as inactive accounts, product recommendations or new registrations.

Mutation

mutation CreateTicket($input: TicketCreateInput!) {
ticketCreate(input: $input) {
id
titles { language value }
descriptions { language value }
type
status
companyId
contactId
productId
orderId
assignedToAdminUserId
createdAt
}
}

Variables

{
"input": {
"titles": [
{ "language": "NL", "value": "Inactief account: Brouwer Industrie" }
],
"descriptions": [
{ "language": "NL", "value": "Geen bestellingen in de afgelopen 90 dagen. Gemiddelde was 2 bestellingen per maand." }
],
"type": "churn_risk",
"status": "OPEN",
"companyId": 456,
"assignedToAdminUserId": 10
}
}

Response

{
"data": {
"ticketCreate": {
"id": "01JNQXYZ1234567890AB",
"titles": [{ "language": "NL", "value": "Inactief account: Brouwer Industrie" }],
"descriptions": [{ "language": "NL", "value": "Geen bestellingen in de afgelopen 90 dagen. Gemiddelde was 2 bestellingen per maand." }],
"type": "churn_risk",
"status": "OPEN",
"companyId": 456,
"contactId": null,
"productId": null,
"orderId": null,
"assignedToAdminUserId": 10,
"createdAt": "2026-03-05T10:00:00.000Z"
}
}
}

More input examples

Link a ticket to a specific product and contact:

{
"input": {
"titles": [
{ "language": "NL", "value": "Productaanbeveling voor Brouwer Industrie" }
],
"descriptions": [
{ "language": "NL", "value": "Klant heeft product #25 drie keer besteld maar nog niet het aanvullende item #31." }
],
"type": "cross_sell",
"status": "OPEN",
"companyId": 456,
"contactId": 312,
"productId": 31
}
}

Link a ticket to an order:

{
"input": {
"titles": [
{ "language": "NL", "value": "Opvolging recente grote bestelling" }
],
"descriptions": [
{ "language": "NL", "value": "Bestelling #2791 was aanzienlijk groter dan gemiddeld. Controleer of de klant extra ondersteuning nodig heeft." }
],
"type": "follow_up",
"status": "OPEN",
"companyId": 456,
"orderId": 2791
}
}

Ticket statuses

StatusMeaning
OPENNew ticket, not yet picked up
IN_PROGRESSSales rep is working on it
COMPLETEDAction taken, ticket resolved
ARCHIVEDNo longer relevant

How it works

Tickets link a sales action to the relevant entities: a company, contact, product, order or cluster. The assignedToAdminUserId routes the ticket to a specific sales rep. The type field is a free-form string, so you can use any value that fits your workflow. The status field uses the TicketStatus enum (OPEN, IN_PROGRESS, COMPLETED, ARCHIVED). Use externalUrl to link to an external CRM or dashboard for additional context. Tickets can be created manually by a sales rep or automatically by an integration that analyzes order patterns.

See also