Open HelpDesk API
Run in Postman
  • Getting started
  • Assistants
  • API reference
Information
Tickets
    List ticketsgetCreate a ticketpostRead a ticketgetUpdate a ticketpatchList a ticket's messagesgetAdd a reply or an internal notepostList every file on a ticketget
Contacts
    List contactsgetCreate a contactpostRead a contactgetDelete a contact (GDPR erasure)deleteUpdate a contactpatch
Organizations
    List organizationsgetCreate an organizationpostRead an organizationgetDelete an organizationdeleteUpdate an organizationpatch
Knowledge base
    List categoriesgetList articlesgetCreate an articlepostRead an articlegetDelete an articledeleteUpdate an articlepatch
Attachments
    Download a fileget
Workspace
    List agentsgetList teamsgetList macrosgetList SLA policiesgetList saved viewsgetList custom ticket fieldsgetList tags in usegetList satisfaction responsesget
Mobile
    Mark a ticket readpostSign in on a devicepostStart an SSO sign-in from the appgetFinish an SSO sign-inpostSign this device outpostThe agent this device is signed in asgetTake work, or stop taking workpatchRegister for push notificationspostStop notifying this devicedeleteWhat happened on my tickets while I was awaygetMark everything readpostSearch tickets, contacts, organizations and articlesget
Customer app
    Email a customer their sign-in linkpostHand an emailed sign-in over to the appgetFinish a customer sign-inpostSign this device outpostThe customer this device is signed in asgetThe requests a customer may seegetSubmit a requestpostRead a request and its conversationgetAnswer on your own requestpostRegister for push notificationspostStop notifying this devicedeleteNews about my requestsgetMark everything readpost
Schemas
powered by Zudoku
Open HelpDesk API
Open HelpDesk API

Schemas


Error

​object · required

Ticket

number
​integer

Per-workspace ticket number, the one agents see.

Example: 4821
subject
​string
status
​string · enum
Enum values:
new
open
waiting
on_hold
resolved
closed
Example: open
priority
​string · enum
Enum values:
low
normal
high
urgent
Example: high
channel
​string · enum
Enum values:
email
portal
widget
api
Example: email
type
​string
​object
assignee_id
​string · uuid
organization_id
​string · uuid
​object

The clock on this ticket. Instants, not remaining durations: a client that has been asleep would otherwise show an hour-old countdown as current. warned_at and breached_at are stamped by the workspace itself, so they say what it has already acted on.

created_at
​string · date-time
updated_at
​string · date-time
unread
​boolean

Is there a message this agent has not seen — one they did not write themselves, newer than the last time they marked the ticket read (POST /tickets/{number}/read). Present only for an agent session: a workspace API key has no "I" to answer for, so the field is absent rather than guessed.

Message

id
​string · uuid
kind
​string · enum
Enum values:
public_reply
internal_note
system_event
author_type
​string · enum
Enum values:
agent
contact
system
author_id
​string · uuid
body_text
​string
body_html
​string
source
​string
created_at
​string · date-time
​Attachment[]

The files sent with this message. Empty for most of them.

Contact

id
​string · uuid
email
​string · email
name
​string
phone
​string
locale
​string
blocked
​boolean
​object
created_at
​string · date-time

Organization

id
​string · uuid
name
​string
email_domains
​string[]

Domains that attach an incoming contact to this company automatically.

shared_tickets
​boolean
notes
​string
​object
created_at
​string · date-time

Agent

id
​string · uuid
email
​string · email
name
​string
role
​string · enum
Enum values:
owner
admin
agent
viewer
status
​string · enum
Enum values:
active
invited
disabled
available
​boolean
created_at
​string · date-time

Team

id
​string · uuid
name
​string
created_at
​string · date-time

Macro

id
​string · uuid
name
​string
category
​string
​object
availability
​string · enum
Enum values:
everyone
team
personal
team_id
​string · uuid
created_at
​string · date-time

SlaPolicy

id
​string · uuid
name
​string
position
​integer
​object
​object

Per priority: { first_reply_min, next_reply_min, resolve_min }.

business_hours_id
​string · uuid
is_default
​boolean
active
​boolean

View

id
​string · uuid
name
​string
shared
​string · enum
Enum values:
private
team
everyone
team_id
​string · uuid
​object
​object
​object
position
​integer
count
​integer

Tickets the view currently holds — the badge, without paging through them.

Example: 12

TicketField

id
​string · uuid
key
​string

The key under which a value appears in custom_fields.

label
​string
type
​string · enum
Enum values:
text
select
multi_select
date
number
checkbox
​object
portal_visible
​boolean
required
​boolean
position
​integer

Tag

name
​string
ticket_count
​integer

KbCategory

id
​string · uuid
parent_id
​string · uuid
name
​string
slug
​string
description
​string
position
​integer

KbArticle

id
​string · uuid
category_id
​string · uuid
title
​string
slug
​string
body_html
​string
status
​string · enum
Enum values:
draft
published
author_id
​string · uuid
published_at
​string · date-time
view_count
​integer
votes_up
​integer
votes_down
​integer
created_at
​string · date-time
updated_at
​string · date-time

Csat

id
​string · uuid
ticket_id
​string · uuid
agent_id
​string · uuid
score
​string · enum
Enum values:
good
bad
comment
​string
created_at
​string · date-time

Attachment

id
​string · uuid
message_id
​string · uuid
filename
​string
content_type
​string
size_bytes
​integer
download_url
​string

Fetch with the same API key.

created_at
​string · date-time

Session

The result of signing in on a device. `token` is shown once and cannot be recovered — store it in the platform keychain, not in application storage.
token
​string · required
expires_at
​string · date-time · required

Slides forward on every authenticated call (90 days of inactivity).

​Agent · required
session_id
​string · uuid

This device's session, as it appears in /me.

Example: 3f2a1c94-8e5b-4d17-9f60-2c7b1a0d5e83
​object

Me

​Agent
​Team[]
​object
​object

PushDevice

A push registration. The APNs/FCM token itself is never returned.
id
​string · uuid
platform
​string · enum
Enum values:
ios
android
device_name
​string
app_version
​string
agent_id
​string · uuid
contact_id
​string · uuid
created_at
​string · date-time
last_seen_at
​string · date-time

WrittenMessage

What a POST to a thread answers: the message, and what became of its files.
id
​string · uuid
ticket_number
​integer
internal
​boolean
created_at
​string · date-time
​object[]
skipped_files
​string[]

Present only when storage refused a file — it names which.

NotificationFeed

Derived from tickets and messages, never stored — which is why `read` is a waterline and not a per-item flag.
​Notification[] · required
unread_count
​integer · required
read_at
​string · date-time · required

Everything older than this counts as read. Null when nothing has been read.

Notification

id
​string

Stable for as long as the fact behind it is.

kind
​string · enum

No "assigned to you": an assignment leaves no date behind, so a derived feed has nothing to sort. That one is a push notification, sent when it happens.

Enum values:
sla_breached
sla_warning
customer_reply
internal_note
ticket_number
​integer
ticket_subject
​string
actor_name
​string
at
​string · date-time
read
​boolean

PortalNotificationFeed

​PortalNotification[] · required
unread_count
​integer · required
read_at
​string · date-time · required

PortalNotification

id
​string
kind
​string · enum

Somebody answered, or the request was resolved. Their own messages are not news to them.

Enum values:
agent_reply
resolved
request_number
​integer
request_subject
​string
actor_name
​string
at
​string · date-time
read
​boolean

ReadReceipt

read_at
​string · date-time
unread_count
​integer

PortalSession

The result of a customer signing in on a device. `token` is shown once — store it in the platform keychain.
token
​string · required
expires_at
​string · date-time · required
​PortalContact · required

A customer, as they may see themselves — never the notes a workspace keeps about them.

session_id
​string · uuid
​object

PortalContact

A customer, as they may see themselves — never the notes a workspace keeps about them.
id
​string · uuid
email
​string · email
name
​string
locale
​string

Stored, but the workspace's own language is what the product renders.

​object

PortalMe

​PortalContact

A customer, as they may see themselves — never the notes a workspace keeps about them.

​object
​object

PortalRequest

One line of "My requests" (MC-01).
number
​integer
subject
​string
status
​string · enum
Enum values:
new
open
waiting
on_hold
resolved
closed
created_at
​string · date-time
updated_at
​string · date-time
resolved_at
​string · date-time
closed_at
​string · date-time
message_count
​integer
​object

Who spoke last, which is what the row says: "Marie replied 3 hrs ago".

PortalMessage

A public reply. Internal notes are never part of this collection.
id
​string · uuid
author_type
​string · enum
Enum values:
agent
contact
system
author_name
​string
body_text
​string
body_html
​string
created_at
​string · date-time
​object[]

PortalRequestDetail

number
​integer
subject
​string
status
​string
type
​string
created_at
​string · date-time
updated_at
​string · date-time
resolved_at
​string · date-time
closed_at
​string · date-time
​PortalMessage[]

SearchResults

A few top matches per kind — this answers "take me to it", not "list them all".
​object[]
​object[]
​object[]
​object[]

Drafts only for an agent session whose role manages the workspace.

On this page
  • Error
  • Ticket
  • Message
  • Contact
  • Organization
  • Agent
  • Team
  • Macro
  • SlaPolicy
  • View
  • TicketField
  • Tag
  • KbCategory
  • KbArticle
  • Csat
  • Attachment
  • Session
  • Me
  • PushDevice
  • WrittenMessage
  • NotificationFeed
  • Notification
  • PortalNotificationFeed
  • PortalNotification
  • ReadReceipt
  • PortalSession
  • PortalContact
  • PortalMe
  • PortalRequest
  • PortalMessage
  • PortalRequestDetail
  • SearchResults