Skip to content

SympoQ API

The SympoQ's Application programming interface (API) is a RESTful web service. It allows performing RESTful operations like request's submission, adding updates to a ticket, listing users (named agents and customers), listing various setting's items, etc. Based on the API description, you can build web, mobile, or server applications that can access your SympoQ data and services.

Overview

SympoQ APIs are plain JSON over HTTP and use the following HTTP commands:

Command Description
POST Create an object
GET Fetch one or more objects
PUT Update an object
DELETE Delete an object

Resource URIs

The URIs used by the API have a common base URI followed by the response data format. The base URI contains the following parts:

  • HTTPS protocol specified
  • API server hostname, which is your account name
  • API keywords

Example: https://acme.sympoq.com/app/desk/api/

Authentication

Before you can use any of the RESTful operations, you need to authenticate yourself using your personal API key. The API key must be sent as the request's Header key apikey. For example, if the API key is dWIeGMRlikMIle, then the corresponding curl command is:

curl -X GET \
  https://acme.sympoq.com/app/desk/api/ticket/1 \
  -H 'apikey: dWIeGMRlikMIle'

You can find your API key in the My profile page:

  • Log in to your SympoQ account
  • Click the My Profile link
  • Your API key will be available at the bottom of the profile page.

Note

The ability to access data depends on the permissions available to your SympoQ user profile. For example, if your support role is "Agent" in a ticket Queue, then you can access only assigned tickets from the Queue.

Error Codes

API requests that result in errors return an appropriate HTTP status code. Please use the following table for the reference.

HTTP Code status Description
200 OK The Request was successful. For a GET request, the response contains an entity corresponding to the requested resource. In a POST request the response will contain an entity describing or containing the result of the action.
201 Created Returned only for POST requests that create repository items. The request was successful and the repository item was created.
400 Bad Request The request could not be completed because the request URL and/or parameters were improperly formatted.
401 Unauthorized Client session does not have the proper security credentials to execute the method, property, or access the repository for the requested resource.
403 Forbidden The specified property has been configured as not writable via the filtering configuration.
404 Not Found The request could not be completed because it was made for a resource which does not exist or the URI pattern has not been followed.
410 Gone Returned only for DELETE requests that remove repository items. The request was successful and the repository item was deleted.
500 Internal server error The request could not be completed because an unexpected exception occurred.

Rate limit

The API server limits the number of requests that can be sent during an interval of time with different limits for read and write operations.