API Reference
x-api-key
header containing a valid API key. You can generate an API Key by going to Settings → API settings → Add new API key, where you’ll also have the option to label it.For endpoints that return lists (like chats), results are returned in pages. Use query parameters like ?page=2&limit=10
to control pagination and retrieve segmented results in manageable batches.
The API supports the following request methods:
-
GET – retrieves data. For example, fetch a list of chats or a specific chat by ID.
-
POST – creates new records. For example, start a new chat or add a new contact.
-
PUT – updates existing records. Used to modify data such as updating chat details or changing contact info.
-
DELETE – removes records. For example, delete a chat, contact, or message.
Each method serves a different purpose. GET is for reading, POST for creating, PUT for editing, and DELETE for removing. Use them depending on what action you want the API to perform.
Endpoints which returns list of objects have this JSON schema:
{ "data": [ ...array of objects ], "page": 1, "limit": 20, "pages": 10, "total": 299}
You can use these query parameters to control pagination (segmented results):
Param | Type | Required | Description |
---|---|---|---|
page | Int | no | Page number. Starts from 1 |
limit | Int | no | Limit items per request. Min: 1, Max: 100, Default: 20 |
GET https://api.converseiq.com.au/public/v1/chat?page=2&limit=10
Response format:
The API might return something like this in the JSON:
{ "data": [ /* 10 chat objects */ ], "page": 2, "limit": 10, "pages": 5, "total": 47}
This tells you:
-
You're on page 2
-
There are 10 results per page
-
There are 5 pages total
-
There are 47 items total
ConverseIQ API BASE URL:
https://api.converseiq.com.au/public/v1
AUTHORIZATION = API Key
ConverseIQ API ENDPOINT URLS:
https://api.converseiq.com.au/public/v1/workspacehttps://api.converseiq.com.au/public/v1/contacthttps://api.converseiq.com.au/public/v1/chathttps://api.converseiq.com.au/public/v1/team
ConverseIQ API ENDPOINT Requests:
Workspace
GET get workspace info
GET https://api.converseiq.com.au/public/v1/workspace
Return Workspace JSON object.
GET get workspace owner info
GET https://api.converseiq.com.au/public/v1/workspace/me
Return Workspace owner User JSON object.
Contact
GET get contacts list
GET https://api.converseiq.com.au/public/v1/contact
Returns an array of Contact objects.
GET search contact
GET https://api.converseiq.com.au/public/v1/contact/search?email={{contactEmail}}
Query params:
Param | Type | Required | Description |
---|---|---|---|
String | yes | Email address to search |
Returns an array of Contact objects.
GET get contact info
GET https://api.converseiq.com.au/public/v1/contact/{{contactID}}
Query params:
Param | Type | Required | Description |
---|---|---|---|
{{contactID}} | String | yes | GUID of the contact |
Returns a Contact JSON object
POST create a contact
POST https://api.converseiq.com.au/public/v1/contact
Request params:
Param | Type | Required | Description |
---|---|---|---|
name | String | no | Contact name |
String | no | Contact email address | |
phone | String | no | Contact phone number |
ip | String | no | Contact IP address |
origin | String (URL) | no | Origin URL |
description | String | no | Description |
country | String | no | Country |
zip_code | String | no | ZIP code |
city | String | no | City |
state | String | no | State |
address | String | no | Address |
company | String | no | Company name |
lang | String | no | Contact language |
Returns a Contact JSON object
Body raw (json)
{ "name": "{{contactName}}", // optional "email": "{{contactEmail}}", // email address, should be unique in workspace, optional "phone": "{{contactPhone}}", // optional "ip": "{{contactIP}}", // IPv4 address, optional "origin": "{{contactOrigin}}", // URL, optional "description": "{{contactDescription}}", // optional "country": "{{contactCountry}}", // optional "zip_code": "{{contactZIP}}", // optional "city": "{{contactCity}}", // optional "state": "{{contactState}}", // optional "address": "{{contactAddress}}", // optional "company": "{{contactCompany}}", // optional "lang": "{{contactLang}}" // optional}
PUT update a contact
PUT https://api.converseiq.com.au/public/v1/contact/{{contactID}}
Query params:
Param | Type | Required | Description |
---|---|---|---|
{{contactID}} | String | yes | GUID of contact |
Request params:
Param | Type | Required | Description |
---|---|---|---|
name | String | no | Contact name |
String | no | Contact email address | |
phone | String | no | Contact phone number |
ip | String | no | Contact IP address |
origin | String (URL) | no | Origin URL |
description | String | no | Description |
country | String | no | Country |
zip_code | String | no | ZIP code |
city | String | no | City |
state | String | no | State |
address | String | no | Address |
company | String | no | Company name |
lang | String | no | Contact language |
Returns a Contact JSON object
Body raw (json)
{ "name": "{{contactName}}", // optional "email": "{{contactEmail}}", // email address, should be unique in workspace, optional "phone": "{{contactPhone}}", // optional "ip": "{{contactIP}}", // IPv4 address, optional "origin": "{{contactOrigin}}", // URL, optional "description": "{{contactDescription}}", // optional "country": "{{contactCountry}}", // optional "zip_code": "{{contactZIP}}", // optional "city": "{{contactCity}}", // optional "state": "{{contactState}}", // optional "address": "{{contactAddress}}", // optional "company": "{{contactCompany}}", // optional "lang": "{{contactLang}}" // optional}
DELETE delete a contact
DELETE https://api.converseiq.com.au/public/v1/contact/{{contactID}}
Return status 200 OK width empty body.
Chat
GET get chats list
GET https://api.converseiq.com.au/public/v1/chat
Returns array of Chat objects
GET get chat info
GET https://api.converseiq.com.au/public/v1/chat/{{chatID}}
Return Chat object
GET get chat messages list
GET https://api.converseiq.com.au/public/v1/chat/{{chatID}}/message
Return array of Message objects of selected chat in DESC order.
GET get chat message
GET https://api.converseiq.com.au/public/v1/chat/{{chatID}}/message/{{messageID}}
Return selected Message object of selected chat
POST Start new chat
POST https://api.converseiq.com.au/public/v1/chat
Initiate a new conversation. In the LiveChatWeb channel, messages can be sent on behalf of the agent, bot, or contact. In all other channels, messages can only be sent on behalf of the agent or bot.
List of body params:
Param | Type | Required | Description |
---|---|---|---|
channel | String (GUID) | yes | Channel GUID. |
message | String | yes | Initial message to start new chat. |
chatflow | Int | no | Start chatflow (if channel is connected to the chatflow). 0 - no, 1 - yes |
agent | String (GUID) | no | GUID of the agent. |
bot | String (GUID) | no | GUID of the bot. |
contact | String (GUID) | no | GUID of the contact. |
To send a message on behalf of someone, you need to provide at least one of the following parameters: agent, bot, or contact.
Body raw (json)
{ "channel": "{{channelID}}", // channel ID, required "message": "{{message}}", // message text, required "chatflow": "{{startChatFlow}}", // start chat flow, optional "agent": "{{teamMemberID}}", // agent ID, optional "bot": "{{botID}}", // bot ID, optional "contact": "{{contactID}}" // contact, optional}
POST Send a message to existing chat
POST https://api.converseiq.com.au/public/v1/chat/{{chatID}}/message
Param | Type | Required | Description |
---|---|---|---|
message | String | yes | Initial message to start new chat. |
agent | String (GUID) | no | GUID of the agent. |
bot | String (GUID) | no | GUID of the bot. |
contact | String (GUID) | no | GUID of the contact. |
To send a message on behalf of someone, you need to provide at least one of the following parameters: agent, bot, or contact.
Body raw (json)
{ "message": "{{message}}", // message text, required "agent": "{{teamMemberID}}", // agent ID, optional "bot": "{{botID}}", // bot ID, optional "contact": "{{contactID}}" // contact, optional}
PUT update chat info
PUT https://api.converseiq.com.au/public/v1/chat/{{chatID}}
This endpoint enables you to modify certain details of an existing chat. Currently, you can only update the chat's title. By default, the chat title matches the contact's name, but this endpoint allows you to rename it. If you want to reset the chat title, you can pass a null value as the title parameter.
Body raw (json)
{ "title": "{{chatTitle}}" // new title of the chat or empty string to reset}
DELETE delete chat
DELETE https://api.converseiq.com.au/public/v1/chat/{{chatID}}
Team
GET get team members list
GET https://api.converseiq.com.au/public/v1/team
Returns an array of TeamMember objects for current workspace.
GET get team member info
GET https://api.converseiq.com.au/public/v1/team/{{memberID}}
Query params:
Param | Type | Required | Description |
---|---|---|---|
{{memberID}} | String | yes | GUID of the team member |
Returns a TeamMember JSON object