API Documentation

Omnidesk API

alt text

The Omnidesk API provides all functionality available in the user interface and more. Specific functionality can be enabled and disabled on API key level.




Formfield

Index

GET https://{{account}}.omnidesk.io/api/v2/formfield

Get forms
GET/formfield

This method will fetch the forms

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/formfield
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This form does not exist."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form field created"
  }

Create new form field
POST/formfield

This method will create a new form field

URI Parameters
HideShow
form_id
#^[0-9]+$# (required) Example: 1
title
#^[a-zA-Z0-9]+$# (required) Example: 1
input_type
#^[a-z]+$# (required) Example: 1
required
#^[0,1]$# (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/formfield/[id]

Get formfield
GET/formfield/[id]

This will get the meta data of a formfield


PUT https://{{account}}.omnidesk.io/api/v2/formfield/[id]
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This form does not exist."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form updated"
  }

Edit form field
PUT/formfield/[id]

This will edit formfields

URI Parameters
HideShow
form_id
#^[0-9]+$# (required) Example: 1
title
#^[a-zA-Z0-9 ]+$# (required) Example: 1
input_type
#^[a-z]+$# (required) Example: 1
required
#^[0,1]$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/formfield/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form deleted"
  }

Delete formfield
DELETE/formfield/[id]

This will delete the formfield.


File

DownloadFile

GET https://{{account}}.omnidesk.io/api/v2/file/downloadfile
Responses400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not retreive a file with this ID."
  }

Download file
GET/file/downloadfile

Download a file

URI Parameters
HideShow
id
#^[0-9]+$# (required) Example: 1

Recording

Index

GET https://{{account}}.omnidesk.io/api/v2/recording

Get recordings
GET/recording

Get a list of available recordings

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

Nps

ContactHistory

GET https://{{account}}.omnidesk.io/api/v2/nps/contacthistory
Responses400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Maximum allowed range is 31 days."
  }

Get contact history
GET/nps/contacthistory

Get the contact history of a brand

URI Parameters
HideShow
brandID
#^([0-9]*)$# (required) Example: 1
start
#^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})$# (required) Example: 1
end
#^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})$# (required) Example: 1

Formfieldoption

Index

GET https://{{account}}.omnidesk.io/api/v2/formfieldoption

Get forms
GET/formfieldoption

This method will fetch the forms

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/formfieldoption
Responses400400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "The form field set as condition does not exist."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This form field does not exist."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form field option has been created."
  }

Create form field option
POST/formfieldoption

This will create a new form field option

URI Parameters
HideShow
form_field_id
#^[0-9]+$# (required) Example: 1
title
#^[0-9a-zA-Z ]+$# (required) Example: 1
condition
#^[0-9]+$# (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/formfieldoption/[id]

Get form field option
GET/formfieldoption/[id]

This will get the meta data of a form field option


PUT https://{{account}}.omnidesk.io/api/v2/formfieldoption/[id]
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This form field does not exist."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form updated"
  }

Edit form field option
PUT/formfieldoption/[id]

This will edit the form field option

URI Parameters
HideShow
form_field_id
#^[0-9]+$# (required) Example: 1
title
#^[0-9a-zA-Z ]+$# (required) Example: 1
condition
#^[0-9]+$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/formfieldoption/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form field option deleted"
  }

Delete formfield option
DELETE/formfieldoption/[id]

This will delete the formfield.


Telephone

ProvisionedNumber

[GET]

Provisioned numbers Get the provisioned numbers

File

[GET]

Sound files Get the sound files available for the telephone functionality

ItemFile

GET https://{{account}}.omnidesk.io/api/v2/telephone/file/[id]

Get sound file
GET/telephone/file/[id]

Get info of one telephone file

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

ItemFileDownloadHEAD

GET https://{{account}}.omnidesk.io/api/v2/telephone/filedownloadhead/[id]

Freeswitch uses HEAD instead of GET
GET/telephone/filedownloadhead/[id]


ItemFileDownload

GET https://{{account}}.omnidesk.io/api/v2/telephone/filedownload/[id]

Get sound file
GET/telephone/filedownload/[id]

Get info of one telephone file

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

ItemFile

PUT https://{{account}}.omnidesk.io/api/v2/telephone/file/[id]

Update sound file
PUT/telephone/file/[id]

Update settings for a sound file

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
label
string (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/telephone/file/[id]

Delete a sound file
DELETE/telephone/file/[id]

Deletes a sound file

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
fileID
string (required) Example: 1

TelephoneFileActiveTimes

GET https://{{account}}.omnidesk.io/api/v2/telephone/telephonefileactivetimes

Sound file active times
GET/telephone/telephonefileactivetimes

Get the active times of a sounds file

URI Parameters
HideShow
dayID
string (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/telephone/telephonefileactivetimes

Create new active times
POST/telephone/telephonefileactivetimes

Creates new active times for a sound file

URI Parameters
HideShow
telephone_file_id
string (required) Example: 1
day
string (required) Example: 1
active_time_from
string (required) Example: 1
active_time_to
string (required) Example: 1

PUT https://{{account}}.omnidesk.io/api/v2/telephone/telephonefileactivetimes

Update active times
PUT/telephone/telephonefileactivetimes

Update active times for a sound file

URI Parameters
HideShow
id
string (required) Example: 1
day
string (required) Example: 1
active_time_from
string (required) Example: 1
active_time_to
string (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/telephone/telephonefileactivetimes

Delete active times
DELETE/telephone/telephonefileactivetimes

Delete active times for a sound file

URI Parameters
HideShow
dayID
string (required) Example: 1

NewInboundCall

POST https://{{account}}.omnidesk.io/api/v2/telephone/newinboundcall
Responses400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not find flow for telephone number. Hint: + should be urlencoded %2B."
  }

Telephone API
POST/telephone/newinboundcall

Register call asap and get instructions for ivr and sound files

URI Parameters
HideShow
callID
#^([-a-zA-Z0-9]+)$# (required) Example: 1
pbxID
#^([-a-zA-Z0-9]+)$# (required) Example: 1
pbxIP
#^([.0-9]+)$# (required) Example: 1
telephoneNumberCalling
#^([+0-9]+)$# (required) Example: 1
telephoneNumberCalled
#^([+0-9]+)$# (required) Example: 1

CallCreateTicket

POST https://{{account}}.omnidesk.io/api/v2/telephone/callcreateticket
Responses200400400200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "message created"
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Agent id not set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Agent id not set."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "ok"
  }

Telephone API
POST/telephone/callcreateticket

URI Parameters
HideShow
variables
string (required) Example: 1
accountCallID
#^([0-9]+)$# (required) Example: 1
type
#^([-a-zA-Z0-9]+)$# (required) Example: 1
agentID
#^([-a-zA-Z0-9]+)$# (required) Example: 1
pbxResponse
string (required) Example: 1
customerCallID
#^([-a-zA-Z0-9]+)$# (required) Example: 1
status
#^failed|in-progress|completed$# (required) Example: 1
code
string (required) Example: 1
callID
#^([-a-zA-Z0-9]+)$# (required) Example: 1
telephoneNumberCalling
#^([+0-9]+)$# (required) Example: 1
telephoneNumberCalled
#^([+0-9]+)$# (required) Example: 1
pbxID
#^([-a-zA-Z0-9]+)$# (required) Example: 1
pbxIP
#^([.0-9]+)$# (required) Example: 1

CreateWarmTransferInbound

POST https://{{account}}.omnidesk.io/api/v2/telephone/createwarmtransferinbound
Responses200200200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "ok"
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "ok"
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "ok"
  }

Create warm transfer
POST/telephone/createwarmtransferinbound

Creates a warm transfer for the given customer call

URI Parameters
HideShow
phoneNumberToTransferTo
#^([+0-9]+)$# (required) Example: 1
internalCallIDCustomer
#^([0-9]+)$# (required) Example: 1

Schedule

Index

GET https://{{account}}.omnidesk.io/api/v2/schedule

Get schedules
GET/schedule

This method will fetch the schedules

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/schedule
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This username already exists in the system."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Schedule created."
  }

Create schedule
POST/schedule

This will create a new schedule

URI Parameters
HideShow
name
#^[0-9a-zA-Z ]+$# (required) Example: 1
days
string (required) Example: 1
exceptions
string (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/schedule/[id]

Get schedule
GET/schedule/[id]

Get schedule data


PUT https://{{account}}.omnidesk.io/api/v2/schedule/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Schedule updated"
  }

Edit schedule
PUT/schedule/[id]

This will edit schedule data

URI Parameters
HideShow
name
#^[0-9a-zA-Z ]+$# (required) Example: 1
days
string (required) Example: 1
exceptions
string (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/schedule/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Schedule deleted"
  }

Delete schedule
DELETE/schedule/[id]

This will delete the schedule.


View

MyViewCounts

GET https://{{account}}.omnidesk.io/api/v2/view/myviewcounts

Get counts of views
GET/view/myviewcounts

This method will fetch number of messages in the views


Index

GET https://{{account}}.omnidesk.io/api/v2/view

Get views
GET/view

This method will fetch the views

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/view
Responses400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No conditions were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all condition fields were set."
  }

Create view
POST/view

This will create a new view

URI Parameters
HideShow
title
#^[0-9a-zA-Z ]+$# (required) Example: 1
primary_sorting: 1 (required,#^[a-z_]+$#)
string (required) 
primary_sorting_order
#asc|desc# (required) Example: 1
secondary_sorting: 1 (required,#^[a-z_]+$#)
string (required) 
secondary_sorting_order
#asc|desc# (required) Example: 1
columns
#^[a-z_]+$# (required) Example: 1

Item

PUT https://{{account}}.omnidesk.io/api/v2/view/[id]
Responses400400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No conditions were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all condition fields were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "View does not exist."
  }

Update view
PUT/view/[id]

This will update the view.

URI Parameters
HideShow
title
#^[0-9a-zA-Z ]+$# (required) Example: 1
primary_sorting: 1 (#^[a-z_]+$#)
string (required) 
primary_sorting_order
#asc|desc# (required) Example: 1
secondary_sorting: 1 (#^[a-z_]+$#)
string (required) 
secondary_sorting_order
#asc|desc# (required) Example: 1
columns
#^[a-z_]+$# (required) Example: 1

GET https://{{account}}.omnidesk.io/api/v2/view/[id]

Get view
GET/view/[id]

This will get the view.


DELETE https://{{account}}.omnidesk.io/api/v2/view/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "View deleted"
  }

Delete view
DELETE/view/[id]

This will delete the view.


Macro

Index

GET https://{{account}}.omnidesk.io/api/v2/macro

Get macros
GET/macro

This method will fetch the macros

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/macro
Responses400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No action specified."
  }

Create macro
POST/macro

This will create a new macro

URI Parameters
HideShow
name
#^[0-9a-zA-Z-:>+()\/ë ]+$# (required) Example: 1

Item

PUT https://{{account}}.omnidesk.io/api/v2/macro/[id]
Responses400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No action specified."
  }

Update macro
PUT/macro/[id]

This method will update the macro

URI Parameters
HideShow
name
#^[0-9a-zA-Z-:>+()\/ë ]+$# (required) Example: 1
formID
string (required) Example: 1

GET https://{{account}}.omnidesk.io/api/v2/macro/[id]

Get macro
GET/macro/[id]

This method will fetch the macro


DELETE https://{{account}}.omnidesk.io/api/v2/macro/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Macro deleted"
  }

Delete macro
DELETE/macro/[id]

This will delete the macro.


Cron

Index

GET https://{{account}}.omnidesk.io/api/v2/cron

Get crons
GET/cron

This method will fetch the crons

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/cron
Responses400400400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No conditions specified."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No action specified."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all condition fields were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all action fields were set."
  }

Create cron
POST/cron

This will create a new cron

URI Parameters
HideShow
name
#^[0-9a-zA-Z-:>+()\/ë ]+$# (required) Example: 1

Item

PUT https://{{account}}.omnidesk.io/api/v2/cron/[id]
Responses400400400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No conditions specified."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No action specified."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all condition fields were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all action fields were set."
  }

Update macro
PUT/cron/[id]

This method will update the macro

URI Parameters
HideShow
name
#^[0-9a-zA-Z-:>+()\/ë ]+$# (required) Example: 1

GET https://{{account}}.omnidesk.io/api/v2/cron/[id]

Get cron
GET/cron/[id]

This method will fetch the cron


DELETE https://{{account}}.omnidesk.io/api/v2/cron/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Cron deleted"
  }

Delete cron
DELETE/cron/[id]

This will delete the cron


Sla

Index

[GET]

SLA Get the SLA policies

Item

GET https://{{account}}.omnidesk.io/api/v2/sla/[id]

Get sla
GET/sla/[id]

This will get the sla.


Index

POST https://{{account}}.omnidesk.io/api/v2/sla
Responses400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No conditions were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all condition fields were set."
  }

Create sla policy
POST/sla

This will create a new sla policy

URI Parameters
HideShow
title
#^[0-9a-zA-Z ]+$# (required) Example: 1
priority
#^[0-9]+$# (required) Example: 1
low_first_reply_time
#^[0-9]+$# (required) Example: 1
medium_first_reply_time
#^[0-9]+$# (required) Example: 1
high_first_reply_time
#^[0-9]+$# (required) Example: 1
urgent_first_reply_time
#^[0-9]+$# (required) Example: 1
low_next_reply_time
#^[0-9]+$# (required) Example: 1
medium_next_reply_time
#^[0-9]+$# (required) Example: 1
high_next_reply_time
#^[0-9]+$# (required) Example: 1
urgent_next_reply_time
#^[0-9]+$# (required) Example: 1
low_customer_wait_time
#^[0-9]+$# (required) Example: 1
medium_customer_wait_time
#^[0-9]+$# (required) Example: 1
high_customer_wait_time
#^[0-9]+$# (required) Example: 1
urgent_customer_wait_time
#^[0-9]+$# (required) Example: 1
low_user_work_time
#^[0-9]+$# (required) Example: 1
medium_user_work_time
#^[0-9]+$# (required) Example: 1
high_user_work_time
#^[0-9]+$# (required) Example: 1
urgent_user_work_time
#^[0-9]+$# (required) Example: 1
timing_type: 1 (required,#calendar_hours|business_hours#)
string (required) 

Item

PUT https://{{account}}.omnidesk.io/api/v2/sla/[id]
Responses400400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No conditions were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all condition fields were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Sla policy does not exist."
  }

Update view
PUT/sla/[id]

This will update the view.

URI Parameters
HideShow
title
#^[0-9a-zA-Z ]+$# (required) Example: 1
priority
#^[0-9]+$# (required) Example: 1
low_first_reply_time
#^[0-9]+$# (required) Example: 1
medium_first_reply_time
#^[0-9]+$# (required) Example: 1
high_first_reply_time
#^[0-9]+$# (required) Example: 1
urgent_first_reply_time
#^[0-9]+$# (required) Example: 1
low_next_reply_time
#^[0-9]+$# (required) Example: 1
medium_next_reply_time
#^[0-9]+$# (required) Example: 1
high_next_reply_time
#^[0-9]+$# (required) Example: 1
urgent_next_reply_time
#^[0-9]+$# (required) Example: 1
low_customer_wait_time
#^[0-9]+$# (required) Example: 1
medium_customer_wait_time
#^[0-9]+$# (required) Example: 1
high_customer_wait_time
#^[0-9]+$# (required) Example: 1
urgent_customer_wait_time
#^[0-9]+$# (required) Example: 1
low_user_work_time
#^[0-9]+$# (required) Example: 1
medium_user_work_time
#^[0-9]+$# (required) Example: 1
high_user_work_time
#^[0-9]+$# (required) Example: 1
urgent_user_work_time
#^[0-9]+$# (required) Example: 1
timing_type: 1 (required,#calendar_hours|business_hours#)
string (required) 
scheduleID
#^[0-9]+$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/sla/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Sla deleted"
  }

Delete sla
DELETE/sla/[id]

This will delete the sla.


Traffic

Index

GET https://{{account}}.omnidesk.io/api/v2/traffic

Get traffic data
GET/traffic

Some explanation about traffic data here.


WaitTime

GET https://{{account}}.omnidesk.io/api/v2/traffic/waittime

Get wait times for a given campaign
GET/traffic/waittime

URI Parameters
HideShow
campaign
string (required) Example: 1

NumUsersAvailable

GET https://{{account}}.omnidesk.io/api/v2/traffic/numusersavailable

Get number of users available for a given campaign
GET/traffic/numusersavailable

URI Parameters
HideShow
campaign
string (required) Example: 1

Privacy

Dashboard

GET https://{{account}}.omnidesk.io/api/v2/privacy/dashboard

Privacy settings
GET/privacy/dashboard

Get data on current privacy data in the system


Item

GET https://{{account}}.omnidesk.io/api/v2/privacy/[id]

Privacy settings
GET/privacy/[id]

Update privacy policy data removal for brand and channel

URI Parameters
HideShow
id
string (required) Example: 1

Index

PUT https://{{account}}.omnidesk.io/api/v2/privacy
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Privacy setting updated."
  }

Privacy settings
PUT/privacy

Update privacy policy data removal for brand and channel


Trigger

Get triggers [GET]

This method will fetch the triggers

  • Parameters

    • query: 1 (#^[0-9a-zA-Z ]+$#)
    • itemStart: 1 (#^[0-9]+$#)
    • itemLimit: 1 (#^[0-9]+$#)

Create trigger [POST]

This will create a new trigger

  • Parameters

    • name: 1 (required,#^[0-9a-zA-Z-:>+()/ë ]+$#)
    • type: 1 (required,#on_create|on_update|on_createandupdate#)
  • Response 400 (application/json)

    • Headers
    • Body {“status”:“error”,“message”:“No conditions specified.”}
  • Response 400 (application/json)

    • Headers
    • Body {“status”:“error”,“message”:“No action specified.”}
  • Response 400 (application/json)

    • Headers
    • Body {“status”:“error”,“message”:“Not all condition fields were set.”}
  • Response 400 (application/json)

    • Headers
    • Body {“status”:“error”,“message”:“Not all action fields were set.”}

Item

PUT https://{{account}}.omnidesk.io/api/v2/trigger/[id]
Responses400400400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No conditions specified."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No action specified."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all condition fields were set."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Not all action fields were set."
  }

Update trigger
PUT/trigger/[id]

This method will update the trigger

URI Parameters
HideShow
name
#^[0-9a-zA-Z-:>+()\/ë ]+$# (required) Example: 1
type
#on_create|on_update|on_createandupdate# (required) Example: 1

GET https://{{account}}.omnidesk.io/api/v2/trigger/[id]

Get trigger
GET/trigger/[id]

This method will fetch the trigger


DELETE https://{{account}}.omnidesk.io/api/v2/trigger/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Trigger deleted"
  }

Delete trigger
DELETE/trigger/[id]

This will delete the trigger


Form

Index

GET https://{{account}}.omnidesk.io/api/v2/form

Get forms
GET/form

This method will fetch the forms

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/form
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This brand does not exist."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User created and invitation sent to email."
  }

Create user
POST/form

This will create a new user

URI Parameters
HideShow
brand_id
#^[0-9]+$# (required) Example: 1
title
#^[a-zA-Z0-9 ]+$# (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/form/[id]

Get form
GET/form/[id]

This will get the meta data of a form


PUT https://{{account}}.omnidesk.io/api/v2/form/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form updated"
  }

Edit form
PUT/form/[id]

This will edit forms

URI Parameters
HideShow
brand_id
#^[0-9]+$# (required) Example: 1
title
#^[a-zA-Z0-9 ]+$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/form/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Form deleted"
  }

Delete form
DELETE/form/[id]

This will delete the form.


Campaign

Index

GET https://{{account}}.omnidesk.io/api/v2/campaign

Get campaigns
GET/campaign

This method will fetch the campaigns

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

Twitter

Account

GET https://{{account}}.omnidesk.io/api/v2/twitter/account

Accounts
GET/twitter/account

Get twitter accounts

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

ItemAccount

GET https://{{account}}.omnidesk.io/api/v2/twitter/account/[id]

Get Twitter account
GET/twitter/account/[id]

Get Twitter account

URI Parameters
HideShow
id
#^(+[0-9]+)$# (required) Example: 1

PUT https://{{account}}.omnidesk.io/api/v2/twitter/account/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Twitter account updated."
  }

Save Twitter account
PUT/twitter/account/[id]

Save Twitter account

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
brand_id
#^([0-9])+$# (required) Example: 1
title
string (required) Example: 1
import_public_messages
#^[0,1]$# (required) Example: 1
import_private_messages
#^[0,1]$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/twitter/account/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Twitter account deleted."
  }

Delete Twitter account
DELETE/twitter/account/[id]

Delete Twitter account

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

Account

POST https://{{account}}.omnidesk.io/api/v2/twitter/account
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Account url created"
  }

Create Twitter account
POST/twitter/account

Create Twitter account

URI Parameters
HideShow
brand_id
#^([0-9])+$# (required) Example: 1
title
string (required) Example: 1
import_public_messages
#^[0,1]$# (required) Example: 1
import_private_messages
#^[0,1]$# (required) Example: 1

Userstatus

Index

GET https://{{account}}.omnidesk.io/api/v2/userstatus

Get user statuses
GET/userstatus

This method will fetch the user statuses

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/userstatus/[id]

Get userstatus
GET/userstatus/[id]

This will get a userstatus

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

Index

POST https://{{account}}.omnidesk.io/api/v2/userstatus
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User status added."
  }

Create userstatus
POST/userstatus

This will create a new userstatus

URI Parameters
HideShow
name
#^[0-9a-zA-Z ]+$# (required) Example: 1
warning_time_seconds
#^([0-9]+)$# (required) Example: 1

Item

PUT https://{{account}}.omnidesk.io/api/v2/userstatus/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User status updated."
  }

Save userstatus
PUT/userstatus/[id]

This will save a userstatus

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
name
#^[0-9a-zA-Z ]+$# (required) Example: 1
warning_time_seconds
#^([0-9]+)$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/userstatus/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User status deleted."
  }

Delete userstatus
DELETE/userstatus/[id]

This will delete a userstatus

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

User

Index

GET https://{{account}}.omnidesk.io/api/v2/user

Get users
GET/user

This method will fetch the users

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/user
Responses400400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This email address already exists in the system."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This username already exists in the system."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User created and invitation sent to email."
  }

Create user
POST/user

This will create a new user

URI Parameters
HideShow
firstname
#^[a-zA-Z ]+$# (required) Example: 1
lastname
#^[a-zA-Z ]+$# (required) Example: 1
name
#^[a-zA-Z0-9.-]+$# (required) Example: 1
email
/^(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){255,})(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){65,}@)(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22))(?:\.(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:(?:xn--)?[a-z0-9]+(?:-+[a-z0-9]+)*\.){1,126}){1,}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-+[a-z0-9]+)*)|(?:\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\]))$/iD (required) Example: 1
telephone_number
#^+[0-9]+$# (required) Example: 1
groups
#^[0-9]+$# (required) Example: 1

Item

PUT https://{{account}}.omnidesk.io/api/v2/user/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User updated"
  }

Edit user
PUT/user/[id]

This will edit user data


DELETE https://{{account}}.omnidesk.io/api/v2/user/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User deleted"
  }

Delete user
DELETE/user/[id]

This will delete the user.


Activate

PUT https://{{account}}.omnidesk.io/api/v2/user/activate
Responses400400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "All user seats for this account are taken ("
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Activation too soon after deactivation for this user. This should at least take one week."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User activated"
  }

Activate user
PUT/user/activate

This will activate a user.

URI Parameters
HideShow
id
#^[0-9]+$# (required) Example: 1

Deactivate

PUT https://{{account}}.omnidesk.io/api/v2/user/deactivate
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User deactivated"
  }

Deactivate user
PUT/user/deactivate

This will deactivate a user.

URI Parameters
HideShow
id
#^[0-9]+$# (required) Example: 1

ReserveUserForLiveChannel

POST https://{{account}}.omnidesk.io/api/v2/user/reserveuserforlivechannel

Reserve user
POST/user/reserveuserforlivechannel

Reserve the user for a live action

URI Parameters
HideShow
type
#^telephone|livechat+$# (required) Example: 1
sessionID
#^[a-zA-Z0-9]+$# (required) Example: 1
server
#^[a-zA-Z0-9.]+$# (required) Example: 1

GetUserViews

GET https://{{account}}.omnidesk.io/api/v2/user/getuserviews

Get user views
GET/user/getuserviews

Retreives the selected views of a user

URI Parameters
HideShow
userID
#^[0-9]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

UpdateUserView

PUT https://{{account}}.omnidesk.io/api/v2/user/updateuserview
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "View setting updated."
  }

Update user view
PUT/user/updateuserview

This endpoint provides functionality to switch a users view on and off

URI Parameters
HideShow
userID
#^[0-9]+$# (required) Example: 1
viewID
#^[0-9]+$# (required) Example: 1
newValue
#[0|1]$# (required) Example: 1

ProfilePicture

POST https://{{account}}.omnidesk.io/api/v2/user/profilepicture
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Profile picture updated. Reload window: F5"
  }

Update user profile picture
POST/user/profilepicture

This endpoint enables you to upload a profile picture for the user

URI Parameters
HideShow
userID
#^[0-9]+$# (required) Example: 1
image
string (required) Example: 1

GET https://{{account}}.omnidesk.io/api/v2/user/profilepicture

Download profile picture
GET/user/profilepicture

This endpoint enables you to download a user profile picture from a given user id

URI Parameters
HideShow
userID
#^[0-9]+$# (required) Example: 1

MaxChats

PUT https://{{account}}.omnidesk.io/api/v2/user/maxchats

Update maximum chats for a user
PUT/user/maxchats

URI Parameters
HideShow
maxChats
#^[0-9]+$# (required) Example: 1
userID
#^[0-9]+$# (required) Example: 1
state
#^[0,1]$# (required) Example: 1

Brand

Index

GET https://{{account}}.omnidesk.io/api/v2/brand

Get brands
GET/brand

This method will fetch the brands

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/brand
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Brand added."
  }

Create brand
POST/brand

This method will create a brand

URI Parameters
HideShow
name
#^[0-9a-zA-Z ]+$# (required) Example: 1
default_email_signature
string (required) Example: 1
external_gui_url
string (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/brand/[id]

Get brand
GET/brand/[id]

This method will get a brand

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

PUT https://{{account}}.omnidesk.io/api/v2/brand/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Brand updated."
  }

Update brand
PUT/brand/[id]

This method will update a brand

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
name
#^[0-9a-zA-Z ]+$# (required) Example: 1
default_email_signature
string (required) Example: 1
external_gui_url
string (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/brand/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Brand deleted."
  }

Delete brand
DELETE/brand/[id]

This method will delete a brand

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

Ticket

Index

GET https://{{account}}.omnidesk.io/api/v2/ticket
Responses400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "View was not found."
  }

Return tickets
GET/ticket

Return all tickets with the option to apply a view specify name 📇

URI Parameters
HideShow
applyView
#^[0-9a-zA-Z]+$# (required) Example: 1
query
string (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/ticket/[id]

Get ticket
GET/ticket/[id]

Get all the data of one ticket


DELETE https://{{account}}.omnidesk.io/api/v2/ticket/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Ticket was deleted."
  }

Delete ticket
DELETE/ticket/[id]

Delete all the data of one ticket

URI Parameters
HideShow
id
#^[0-9]+$# (required) Example: 1

TicketSummary

GET https://{{account}}.omnidesk.io/api/v2/ticket/ticketsummary

Get ticket summary
GET/ticket/ticketsummary

Get most important ticket data and first few messages

URI Parameters
HideShow
ticketID
#^[0-9]+$# (required) Example: 1

Index

POST https://{{account}}.omnidesk.io/api/v2/ticket

Create an empty ticket
POST/ticket

Creates a new empty ticket with data defaults. Ticket data can be added and edited trough other ticket, message and form endpoints. This endpoint will return the new ticket id as response.


Assign

POST https://{{account}}.omnidesk.io/api/v2/ticket/assign
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "assigned"
  }

Assign ticket
POST/ticket/assign

Assign the ticket to a user or group

URI Parameters
HideShow
id
#^u[0-9]+|g[0-9]+|me|unassigngroup|unassignuser|unassignboth$# (required) Example: 1
ticketID
#^[0-9]+$# (required) Example: 1

SetStatus

POST https://{{account}}.omnidesk.io/api/v2/ticket/setstatus
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Ticket status is updated."
  }

Set ticket status
POST/ticket/setstatus

Sets the status of the ticket

URI Parameters
HideShow
status
#^(new|open|pending|holding|solved|closed)$# (required) Example: 1
ticketIDs
#^[0-9]+$# (required) Example: 1

SetPriority

POST https://{{account}}.omnidesk.io/api/v2/ticket/setpriority
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Ticket priority is updated."
  }

Set ticket priority
POST/ticket/setpriority

Sets the priority of the ticket

URI Parameters
HideShow
priority
#^(low|medium|high|urgent)$# (required) Example: 1
ticketIDs
#^[0-9]+$# (required) Example: 1

TriggerNewTicketCustomer

POST https://{{account}}.omnidesk.io/api/v2/ticket/triggernewticketcustomer
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Customer ticket functionality has been initialised."
  }

Start customer ticket functionality
POST/ticket/triggernewticketcustomer

Initialise some functionality when customer creates ticket, like starting SLA

URI Parameters
HideShow
ticketID
#([0-9]+)$# (required) Example: 1

TriggerCustomerSendsMessage

POST https://{{account}}.omnidesk.io/api/v2/ticket/triggercustomersendsmessage
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Customer ticket functionality has been initialised."
  }

Start customer ticket functionality
POST/ticket/triggercustomersendsmessage

Initialise some functionality when customer adds a new message to the ticket, for continuing SLA for instance

URI Parameters
HideShow
ticketID
#([0-9]+)$# (required) Example: 1

SlaSummary

GET https://{{account}}.omnidesk.io/api/v2/ticket/slasummary

Get SLA metrics
GET/ticket/slasummary

Gets the SLA metrics that are currently active or if not active are already achieved

URI Parameters
HideShow
ticketID
#([0-9]+)$# (required) Example: 1

Customer

Index

GET https://{{account}}.omnidesk.io/api/v2/customer

Get customers
GET/customer

This method will fetch the customers 📇

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

SearchByPrimaryExternalId

POST https://{{account}}.omnidesk.io/api/v2/customer/searchbyprimaryexternalid

Search Customer
POST/customer/searchbyprimaryexternalid

This method will search for a customer by your customer id. Primary id is your customer or order id on which Omnidesk will link the tickets. 🔍

URI Parameters
HideShow
primary_id
#^[0-9a-zA-Z-]+$# (required) Example: 1
brand_id
#^[0-9]+$# (required) Example: 1

Index

POST https://{{account}}.omnidesk.io/api/v2/customer
Responses400400400400200400400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Invalid mail address"
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "No channel id specified (for instance phone number or email)."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Invalid mail address"
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This customer address already exists."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "User created and channel linked."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This address is already linked to this customer. Nevertheless this action linked the ticket to the existing customer."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This customer address already exists."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Address added to the customer."
  }

Create customer
POST/customer

This method will create a new customer. Primary id is the customer id or order id of your brand on which Omnidesk will link the tickets. Brand id can be found in your application at Settings and then Brands. Channel id options are email, telephone, facebook, twitter Customer linked channel is the contact point to be linked, when channel id is email, a valid customer linked channel would be an email address. Ticket id you may also provide ticket_id which will link the provided ticket to the customer

URI Parameters
HideShow
customer_link_channel
#^+[0-9]+$# (required) Example: 1
primary_id
string (required) Example: 1
brand_id
#^[0-9]+$# (required) Example: 1
firstname
#^[a-zA-Z.- ]+$# (required) Example: 1
lastname
#^[a-zA-Z0-9.- ]+$# (required) Example: 1
channel_id
#^([0-9]+|email|telephone|facebook|twitter)$# (required) Example: 1

AddChannelOnly

POST https://{{account}}.omnidesk.io/api/v2/customer/addchannelonly
Responses400400400200200400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "You should at least set a customer id or a primary id."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Customer not found by primary id."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This customer address already exists."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Channel added to the customer."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Customer deleted."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not delete the customer."
  }

Add channel to customer
POST/customer/addchannelonly

This method will add another channel endpoint to the customer. Optionally you can provide a brand_id and primary id instead of customer id.

URI Parameters
HideShow
customer_id
#^[0-9]+$# (required) Example: 1
primary_id
string (required) Example: 1
brand_id
#^[0-9]+$# (required) Example: 1
extra_email
#^[0-9]+$# (required) Example: 1
extra_telephone
#^[0-9]+$# (required) Example: 1
extra_twitter
#^[0-9]+$# (required) Example: 1
extra_facebook
#^[0-9]+$# (required) Example: 1
id
#^[0-9]+$# (required) Example: 1

ItemChannel

DELETE https://{{account}}.omnidesk.io/api/v2/customer/channel/[id]
Responses200400
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Linked channel deleted."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not delete the linked channel."
  }

Delete customer channel
DELETE/customer/channel/[id]

This method will delete a channel endpoint of one customer. 💥

URI Parameters
HideShow
id
#^[0-9]+$# (required) Example: 1

TimelineByCustomerExternalID

GET https://{{account}}.omnidesk.io/api/v2/customer/timelinebycustomerexternalid
Responses400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Brand not found."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Customer not found."
  }

Get customer timeline
GET/customer/timelinebycustomerexternalid

Get the timeline from the customer by your primary ID external ID. 📃

URI Parameters
HideShow
brand_id
#^[0-9]+$# (required) Example: 1
external_id
#^[0-9]+$# (required) Example: 1

ItemPurgeData

DELETE https://{{account}}.omnidesk.io/api/v2/customer/purgedata/[id]
Responses200400400200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Customer data purged."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "You should at least set a customer id or an external id."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Customer not found by primary id."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Event created."
  }

Purge customer data
DELETE/customer/purgedata/[id]

Removes customer and also its tickets, etc from the application 💥

URI Parameters
HideShow
id
#^[0-9]+$# (required) Example: 1
customer_id
#^[0-9]+$# (required) Example: 1
external_id
string (required) Example: 1
brand_id
#^[0-9]+$# (required) Example: 1
initiated_by
string (required) Example: 1
message
string (required) Example: 1
source_url
string (required) Example: 1

Group

Index

GET https://{{account}}.omnidesk.io/api/v2/group

Get groups
GET/group

This method will fetch the groups

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/group
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This group already exists in the system."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Group created."
  }

Create group
POST/group

This will create a new group

URI Parameters
HideShow
name
#^[a-zA-Z0-9]+$# (required) Example: 1
permissions
#^[A-Z_]+$# (required) Example: 1

Item

GET https://{{account}}.omnidesk.io/api/v2/group/[id]

Get group
GET/group/[id]

This will get the group.


PUT https://{{account}}.omnidesk.io/api/v2/group/[id]
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "This group does not exist in the system."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Group updated"
  }

Update group
PUT/group/[id]

This will update the group.

URI Parameters
HideShow
id
#^[0-9]+$# (required) Example: 1
name
#^[a-zA-Z0-9]+$# (required) Example: 1
permissions
#^[A-Z_]+$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/group/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Group deleted"
  }

Delete group
DELETE/group/[id]

This will delete the group.

URI Parameters
HideShow
query
#^[0-9a-zA-Z]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

Chat

NotifyUserNewChatEvent

POST https://{{account}}.omnidesk.io/api/v2/chat/notifyusernewchatevent
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not retreive active chat session, create one first."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Event sent."
  }

Notify user
POST/chat/notifyusernewchatevent

Notify the user of a new chat event

URI Parameters
HideShow
chatServer
#^[a-zA-Z0-9.:\/]+$# (required) Example: 1
chatSessionID
#^[a-zA-Z0-9]+$# (required) Example: 1
event
#^startedtyping|stoppedtyping|expandedchat|minimizedchat$# (required) Example: 1

SessionInfoByTicketID

GET https://{{account}}.omnidesk.io/api/v2/chat/sessioninfobyticketid
Responses400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not retreive active chat session, create one first."
  }

Get chat session info
GET/chat/sessioninfobyticketid

Get chat session info

URI Parameters
HideShow
ticketID
#^[0-9]+$# (required) Example: 1

NotifyUserVisited

POST https://{{account}}.omnidesk.io/api/v2/chat/notifyuservisited
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not retreive active chat session, create one first."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Event sent."
  }

Notify user visited
POST/chat/notifyuservisited

Notify the user of a new chat url visited

URI Parameters
HideShow
chatServer
#^[a-zA-Z0-9.:\/]+$# (required) Example: 1
chatSessionID
#^[a-zA-Z0-9]+$# (required) Example: 1
url
string (required) Example: 1

AddAttachment

POST https://{{account}}.omnidesk.io/api/v2/chat/addattachment
Responses400200400200200200200400200400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "File not set."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Attachment uploaded."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not retreive specified session."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Session ended."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "nok, check allowed domains for the chat"
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "nok, check ip blacklist"
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "ok"
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not retreive specified session."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "ok"
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not retreive specified session."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "ok"
  }

Add attachments
POST/chat/addattachment

Add one or more attachments to the session

URI Parameters
HideShow
chatServer
#^[a-zA-Z0-9.:\/]+$# (required) Example: 1
chatAccountToken
#^[a-zA-Z0-9]+$# (required) Example: 1
origin
#^[a-zA-Z0-9.-]+$# (required) Example: 1
ip
string (required) Example: 1
typing
#true|false# (required) Example: 1
chatSessionID
#^[a-zA-Z0-9]+$# (required) Example: 1

Token

GET https://{{account}}.omnidesk.io/api/v2/chat/token

Get tokens
GET/chat/token

Get chat tokens

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

ItemToken

GET https://{{account}}.omnidesk.io/api/v2/chat/token/[id]

Get chat token
GET/chat/token/[id]

Get a specific chat token

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

PUT https://{{account}}.omnidesk.io/api/v2/chat/token/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Token settings updated."
  }

Update chat token
PUT/chat/token/[id]

Chat settings are applied to chat tokens

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
brand_id
#^([0-9])+$# (required) Example: 1
ask_email
#^([0-1])$# (required) Example: 1
ask_phone_number
#^([0-1])$# (required) Example: 1
default_campaign
string (required) Example: 1
schedule_id
#^([0-9]+|null)$# (required) Example: 1
closed_message
string (required) Example: 1
hide_when_closed
#^([0-1])$# (required) Example: 1
hide_when_no_agents_available
#^([0-1])$# (required) Example: 1
show_team
#^([0-1])$# (required) Example: 1
show_profile_picture
#^([0-1])$# (required) Example: 1

Message

Index

POST https://{{account}}.omnidesk.io/api/v2/message

Create message
POST/message

Creates a new message

URI Parameters
HideShow
ticketID
#^[0-9]+$# (required) Example: 1
type
#^[0-9]+|email|telephone|facebook|twitter|facebook_pm|twitter_pm|telephone_outbound|chat|whatsapp$# (required) Example: 1
message
string (required) Example: 1

Event

POST https://{{account}}.omnidesk.io/api/v2/message/event
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Customer not found."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Event created."
  }

Create event
POST/message/event

Create a event message: for instance a new order

URI Parameters
HideShow
brand_id
#^[0-9]+$# (required) Example: 1
primary_id
string (required) Example: 1
ticket_id
#^[0-9]+$# (required) Example: 1
message
string (required) Example: 1

Email

Address

GET https://{{account}}.omnidesk.io/api/v2/email/address

Get mail addresses
GET/email/address

Get the mail addresses

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

ItemAddress

GET https://{{account}}.omnidesk.io/api/v2/email/address/[id]

Get mail address
GET/email/address/[id]

Get one specific mail address

URI Parameters
HideShow
id
#^(+[0-9]+)$# (required) Example: 1

PUT https://{{account}}.omnidesk.io/api/v2/email/address/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Email address updated."
  }

Save mail address
PUT/email/address/[id]

Save one specific mail address

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
brand_id
#^([0-9])+$# (required) Example: 1
email
string (required) Example: 1
reply_email
string (required) Example: 1
is_primary
#^[0,1]$# (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/email/address/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Email address deleted."
  }

Delete mail address
DELETE/email/address/[id]

Delete one specific mail address

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

Address

POST https://{{account}}.omnidesk.io/api/v2/email/address
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Email address created."
  }

Create mail address
POST/email/address

Create one specific mail address

URI Parameters
HideShow
brand_id
#^([0-9])+$# (required) Example: 1
email
string (required) Example: 1
reply_email
string (required) Example: 1
is_primary
#^[0,1]$# (required) Example: 1

Channel

Index

GET https://{{account}}.omnidesk.io/api/v2/channel

Get channels
GET/channel

This method will fetch the channels

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

Facebook

Account

GET https://{{account}}.omnidesk.io/api/v2/facebook/account

Accounts
GET/facebook/account

Get facebook accounts

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

ItemAccount

GET https://{{account}}.omnidesk.io/api/v2/facebook/account/[id]

Get Facebook Account
GET/facebook/account/[id]

Get Facebook account

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

PUT https://{{account}}.omnidesk.io/api/v2/facebook/account/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Facebook account updated."
  }

Save Facebook ccount
PUT/facebook/account/[id]

Save Facebook account

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1
brand_id
#^([0-9])+$# (required) Example: 1
name
string (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/facebook/account/[id]
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Facebook account deleted."
  }

Delete Facebook account
DELETE/facebook/account/[id]

Delete Facebook account

URI Parameters
HideShow
id
#^([0-9]+)$# (required) Example: 1

Account

POST https://{{account}}.omnidesk.io/api/v2/facebook/account
Responses400200
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Could not find a page with the selected page id."
  }
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Account created"
  }

Create Facebook account
POST/facebook/account

Create Facebook account

URI Parameters
HideShow
brand_id
#^([0-9])+$# (required) Example: 1
name
string (required) Example: 1
page_id
#^([0-9])+$# (required) Example: 1

Flow

ParsedFlow

GET https://{{account}}.omnidesk.io/api/v2/flow/parsedflow

Get parsed flow
GET/flow/parsedflow

Gives instructions to live channel


Setting

ExcludeGroupingAddress

GET https://{{account}}.omnidesk.io/api/v2/setting/excludegroupingaddress

Exclude grouping address
GET/setting/excludegroupingaddress

This function provides functionality to get the addresses excluded from grouping

URI Parameters
HideShow
query
#^[0-9a-zA-Z ]+$# (required) Example: 1
itemStart
#^[0-9]+$# (required) Example: 1
itemLimit
#^[0-9]+$# (required) Example: 1

POST https://{{account}}.omnidesk.io/api/v2/setting/excludegroupingaddress
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Address exclusion added."
  }

Exclude grouping address
POST/setting/excludegroupingaddress

This function provides functionality to create the addresses excluded from grouping

URI Parameters
HideShow
brand_id
string (required) Example: 1
channel_id
string (required) Example: 1

DELETE https://{{account}}.omnidesk.io/api/v2/setting/excludegroupingaddress
Responses200
Headers
Content-Type: application/json
Body
{
    "type": "result",
    "message": "Address exclusion deleted."
  }

Exclude grouping address
DELETE/setting/excludegroupingaddress

This function provides functionality to delete the addresses excluded from grouping


Statistics

Options

GET https://{{account}}.omnidesk.io/api/v2/statistics/options

Statistics options
GET/statistics/options

Get the options available to the statistics showQuery and showData


ShowQuery

GET https://{{account}}.omnidesk.io/api/v2/statistics/showquery

Statistics query
GET/statistics/showquery

Create a query based on selected facts, groupBys and filters

URI Parameters
HideShow
facts
string (required) Example: 1
groupBy
string (required) Example: 1
filters
string (required) Example: 1

ShowData

GET https://{{account}}.omnidesk.io/api/v2/statistics/showdata
Responses400400400400400400400400400
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "You selected multiple time filters. Please select only one."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "One time filter is required."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Maximum allowed range for the time filter is 60 days."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Group by "
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Filter "
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Fact not found in available options."
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "The following data was expected:"
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "The following data was expected:"
  }
Headers
Content-Type: application/json
Body
{
    "status": "error",
    "message": "Invalid combination of params."
  }

Statistics data
GET/statistics/showdata

Get statistics data based on selected facts, groupBys and filters

URI Parameters
HideShow
facts
string (required) Example: 1
groupBy
string (required) Example: 1
filters
string (required) Example: 1
filterTimeFrom
#^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})$# (required) Example: 1
filterTimeTo
#^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})$# (required) Example: 1

Generated by aglio on 07 May 2018