Introduction

Welcome to Comm100 Restful API help guide. Our APIs makes it possible for you to integrate your applications with Comm100 LiveChat to achieve seamless data sharing. Our goal to help businesses automate their service and enhance the customer support capability with innovation projects that you can create using Comm100 API.

The Basics

Comm100 RESTful API must use https protocol. What the API requests should start with depends on your platform domain, which can be accessed from both your Control Panel and web version Agent Console after successful login. For example:

If your Control Panel domain is dash11.comm100.io, all API requests (except for the request to generate the access token) should start with https://api11.comm100.io/v4/.
If your Control Panel domain is dash12.comm100.io, all API requests (except for the request to generate the access token) should start with https://api12.comm100.io/v4/.
If your Control Panel domain is dash13.comm100.io, all API requests (except for the request to generate the access token) should start with https://api13.comm100.io/v4/.
If your Control Panel domain is dash15.comm100.io, all API requests (except for the request to generate the access token) should start with https://api15.comm100.io/v4/.
If your Control Panel domain is dash17.comm100.io, all API requests (except for the request to generate the access token) should start with https://api17.comm100.io/v4/.

Note: Each IP can call the APIs maximum 300 times every 5 minutes.

API_key Authentication

For each method call, you must use your email and API_KEY.Authentication to the API is done via HTTP Basic Auth. Provide your email as the basic auth username and API_KEY as the password. You must authenticate for API requests. Even though we still support this type of authentication, we recommend using Oauth authentication.

When using API key to call the interface, you need to bring the parameter siteId. For Example: GET https://api11.comm100.io/v4/livechat/campaigns?siteId=10000

Oauth Authentication

You can use OAuth2 to authenticate all your API requests to Comm100. OAuth provides a more secure way for your application to access your account data without requiring sensitive information like email and password to be sent with the requests. There are different OAuth flows for different types of API.

Note that while generating an access token, the API request should start with your platform domain, which is different from other API requests. For example:

If your Control Panel domain is dash11.comm100.io, the API request should start with https://dash11.comm100.io/.
If your Control Panel domain is dash12.comm100.io, the API request should start with https://dash12.comm100.io/.
If your Control Panel domain is dash13.comm100.io, the API request should start with https://dash13.comm100.io/.
If your Control Panel domain is dash15.comm100.io, the API request should start with https://dash15.comm100.io/.
If your Control Panel domain is dash17.comm100.io, the API request should start with https://dash17.comm100.io/.
How to get the access token?
Using curl

POST oauth/token

Params:

Name Type Required Description
email string yes Email of the agent account.
password string yes Password of the agent account.
grant_type string yes Specify password as the value.
client_id string yes ClientId of the oauth client. Go to the control panel / global settings / security/ OAuth Client / Edit OAuth client page to get the client_id.
Example

Sample Request:

curl https://dash11.comm100.io/oauth/token \
-X 'POST' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-D 'grant_type=password&email={comm100_agent_email}&password={comm100_agent_password}&client_Id={comm100_oauthClient_clientId}'

Response:

 HTTP/1.1 200 OK

{ "access_token":"vQAQmLX8jvtsG71ItN2QAisqI_F7cDIE0yaX0FfS3RX6g-HR4gfHSVMaOukomYJiJX0Q" ,"token_type":"bearer" ,"expires_in":43199 ,"refresh_token":"91a728cdd4c64fb7b128f74f4855c3daee44167ef60542a2b45c21e16373ed02" }
Data Format

Comm100 RESTful API returns data in JSON format.

Error Handling

Errors are returned using standard HTTP error code syntax. Generally, codes in the 2xx range indicate success; codes in the 4xx range indicate an error (bad or missing parameters, not authenticated, etc.); codes in the 5xx range indicate an error with Comm100 Live Chat servers.

400 - Bad Request. The request cannot be fulfilled due to bad syntax. You need to make sure that passed arguments are matching format in the method's documentation.
401 - Unauthorized. The username or API key you provide is invalid. Please make sure that you authenticate with the correct username or API key.
403 - Forbidden. Your permission to access the requested resource has been denied or the number of your API requests has exceeded the limit of the day.
404 - Not Found. The requested resource could not be found but may be available at a later time.
500 - Internal Server Error. The request was incorrect. You need to make sure that the passed arguments match the formats in the method's documentation.
Pagination & Sorting

The majority of list resources in the API allow paging and sorting.

Pagination

You can specify how many items per page you want to fetch.

Params:

Name Type Required Description
pageIndex integer no The page index of query.
pageSize integer no The page size of this query. Default number of results is 10.

Response:

Name Type Description
previousPage integer URL of the previous page, if there is no next page, show null.
nextPage integer URL of the next page, if there is no next page, show null.
total integer Total count of the list.
Sorting

You can specify the order of list resources.

Params:

Name Type Required Description
sortBy string no Any model field.
sortOrder string no Allowed values are "asc", "desc".
Time Zone Options
Id Display name
Dateline Standard Time (UTC-12:00) International Date Line West
UTC-11 (UTC-11:00) Coordinated Universal
Aleutian Standard Time (UTC-10:00) Aleutian Islands
Hawaiian Standard Time (UTC-10:00) Hawaii
Marquesas Standard Time (UTC-09:30) Marquesas Islands
Alaskan Standard Time (UTC-09:00) Alaska
UTC-09 (UTC-09:00) Coordinated Universal
Pacific Standard Time (Mexico) (UTC-08:00) Baja California
UTC-08 (UTC-08:00) Coordinated Universal
Pacific Standard Time (UTC-08:00) Pacific Time (US & Canada)
US Mountain Standard Time (UTC-07:00) Arizona
Mountain Standard Time (Mexico) (UTC-07:00) Chihuahua, La Paz, Mazatlan
Mountain Standard Time (UTC-07:00) Mountain Time (US & Canada)
Central America Standard Time (UTC-06:00) Central America
Central Standard Time (UTC-06:00) Central Time (US & Canada)
Easter Island Standard Time (UTC-06:00) Easter Island
Central Standard Time (Mexico) (UTC-06:00) Guadalajara, Mexico City, Monterrey
Canada Central Standard Time (UTC-06:00) Saskatchewan
SA Pacific Standard Time (UTC-05:00) Bogota, Lima, Quito, Rio Branco
Eastern Standard Time (Mexico) (UTC-05:00) Chetumal
Eastern Standard Time (UTC-05:00) Eastern Time (US & Canada)
Haiti Standard Time (UTC-05:00) Haiti
Cuba Standard Time (UTC-05:00) Havana
US Eastern Standard Time (UTC-05:00) Indiana (East)
Paraguay Standard Time (UTC-04:00) Asuncion
Atlantic Standard Time (UTC-04:00) Atlantic Time (Canada)
Venezuela Standard Time (UTC-04:00) Caracas
Central Brazilian Standard Time (UTC-04:00) Cuiaba
SA Western Standard Time (UTC-04:00) Georgetown, La Paz, Manaus, San Juan
Pacific SA Standard Time (UTC-04:00) Santiago
Turks and Caicos Standard Time (UTC-04:00) Turks and Caicos
Newfoundland Standard Time (UTC-03:30) Newfoundland
Tocantins Standard Time (UTC-03:00) Araguaina
E. South America Standard Time (UTC-03:00) Brasilia
SA Eastern Standard Time (UTC-03:00) Cayenne, Fortaleza
Argentina Standard Time (UTC-03:00) City of Buenos Aires
Greenland Standard Time (UTC-03:00) Greenland
Montevideo Standard Time (UTC-03:00) Montevideo
Magallanes Standard Time (UTC-03:00) Punta Arenas
Saint Pierre Standard Time (UTC-03:00) Saint Pierre and Miquelon
Bahia Standard Time (UTC-03:00) Salvador
UTC-02 (UTC-02:00) Coordinated Universal Time-02
Azores Standard Time (UTC-01:00) Azores
Morocco Standard Time (UTC+00:00) Casablanca
GMT Standard Time (UTC+00:00) Dublin, Edinburgh, Lisbon, London
Greenwich Standard Time (UTC+00:00) Monrovia, Reykjavik
Sao Tome Standard Time (UTC+00:00) Sao Tome
W. Europe Standard Time (UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna
Central Europe Standard Time (UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague
Romance Standard Time (UTC+01:00) Brussels, Copenhagen, Madrid, Paris
Central European Standard Time (UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb
W. Central Africa Standard Time (UTC+01:00) West Central Africa
Namibia Standard Time (UTC+01:00) Windhoek
Jordan Standard Time (UTC+02:00) Amman
GTB Standard Time (UTC+02:00) Athens, Bucharest
Middle East Standard Time (UTC+02:00) Beirut
Egypt Standard Time (UTC+02:00) Cairo
E. Europe Standard Time (UTC+02:00) Chisinau
Syria Standard Time (UTC+02:00) Damascus
West Bank Gaza Standard Time (UTC+02:00) Gaza, Hebron
South Africa Standard Time (UTC+02:00) Harare, Pretoria
FLE Standard Time (UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius
Jerusalem Standard Time (UTC+02:00) Jerusalem
Sudan Standard Time (UTC+02:00) Khartoum
Libya Standard Time (UTC+02:00) Tripoli
Russian Standard Time (UTC+03:00) Moscow, St. Petersburg
Arabic Standard Time (UTC+03:00) Baghdad
Turkey Standard Time (UTC+03:00) Istanbul
Arab Standard Time (UTC+03:00) Kuwait, Riyadh
Belarus Standard Time (UTC+03:00) Minsk
E. Africa Standard Time (UTC+03:00) Nairobi
Iran Standard Time (UTC+03:30) Tehran
Russia Time Zone 3 (UTC+04:00) Izhevsk, Samara
Arabian Standard Time (UTC+04:00) Abu Dhabi, Muscat
Astrakhan Standard Time (UTC+04:00) Astrakhan, Ulyanovsk
Azerbaijan Standard Time (UTC+04:00) Baku
Mauritius Standard Time (UTC+04:00) Port Louis
Saratov Standard Time (UTC+04:00) Saratov
Georgian Standard Time (UTC+04:00) Tbilisi
Volgograd Standard Time (UTC+04:00) Volgograd
Caucasus Standard Time (UTC+04:00) Yerevan
Afghanistan Standard Time (UTC+04:30) Kabul
West Asia Standard Time (UTC+05:00) Ashgabat, Tashkent
Pakistan Standard Time (UTC+05:00) Islamabad, Karachi
Qyzylorda Standard Time (UTC+05:00) Qyzylorda
India Standard Time (UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi
Sri Lanka Standard Time (UTC+05:30) Sri Jayawardenepura
Nepal Standard Time (UTC+05:45) Kathmandu
Central Asia Standard Time (UTC+06:00) Astana
Bangladesh Standard Time (UTC+06:00) Dhaka
Omsk Standard Time (UTC+06:00) Omsk
Myanmar Standard Time (UTC+06:30) Yangon (Rangoon)
SE Asia Standard Time (UTC+07:00) Bangkok, Hanoi, Jakarta
Altai Standard Time (UTC+07:00) Barnaul, Gorno-Altaysk
W. Mongolia Standard Time (UTC+07:00) Hovd
Tomsk Standard Time (UTC+07:00) Tomsk
China Standard Time (UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi
W. Australia Standard Time (UTC+08:00) Perth
Taipei Standard Time (UTC+08:00) Taipei
Ulaanbaatar Standard Time (UTC+08:00) Ulaanbaatar
North Korea Standard Time (UTC+08:30) Pyongyang
Aus Central W. Standard Time (UTC+08:45) Eucla
Transbaikal Standard Time (UTC+09:00) Chita
Tokyo Standard Time (UTC+09:00) Osaka, Sapporo, Tokyo
Korea Standard Time (UTC+09:00) Seoul
Cen. Australia Standard Time (UTC+09:30) Adelaide
AUS Central Standard Time (UTC+09:30) Darwin
E. Australia Standard Time (UTC+10:00) Brisbane
AUS Eastern Standard Time (UTC+10:00) Canberra, Melbourne, Sydney
West Pacific Standard Time (UTC+10:00) Guam, Port Moresby
Tasmania Standard Time (UTC+10:00) Hobart
Lord Howe Standard Time (UTC+10:30) Lord Howe Island
Russia Time Zone 10 (UTC+11:00) Chokurdakh
Bougainville Standard Time (UTC+11:00) Bougainville Island
Magadan Standard Time (UTC+11:00) Magadan
Norfolk Standard Time (UTC+11:00) Norfolk Island
Sakhalin Standard Time (UTC+11:00) Sakhalin
Central Pacific Standard Time (UTC+11:00) Solomon Is., New Caledonia
Russia Time Zone 11 (UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky
New Zealand Standard Time (UTC+12:00) Auckland, Wellington
UTC+12 (UTC+12:00) Coordinated Universal
Fiji Standard Time (UTC+12:00) Fiji
Kamchatka Standard Time (UTC+12:00) Petropavlovsk-Kamchatsky
Chatham Islands Standard Time (UTC+12:45) Chatham Islands
UTC+13 (UTC+13:00) Coordinated Universal
Tonga Standard Time (UTC+13:00) Nuku'alofa
Samoa Standard Time (UTC+13:00) Samoa
Line Islands Standard Time (UTC+14:00) Kiritimati Island