Download OpenAPI specification:
Welcome to the Botsplash Open API!
Using this API, Botsplash's clients and partners can integrate their applications to communicate with Botsplash platform to seamlessly engage with customers.
We have language bindings in Shell, NodeJs and Python! You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right.
This API is restricted to selected Botsplash clients and partners. Please contact Botsplash support for setting up API access, IP Whitelisting or for help with troubleshooting the API access at support@botsplash.com.
Listeners are the entry points into Botsplash platform. Use this endpoint to submit CRM visitor information or new lead data to initiate engagement from conversation channels.
Use cases:
Submit visitor information to endpoint using Botsplash schema. The submitted user information will be engaged on conversation channels as configured in the routing workflow.
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
| id required | string Unique Listener Id as defined in Admin Listener Settings. The same listener Id is used to setup the routing workflow. |
Visitor information to engage on conversation channels.
required | object (VisitorNewSubmit) |
object Request arguments |
{- "visitor": {
- "clientVisitorId": "12345",
- "agentClientUserId": "12345",
- "participantAgentIds": "54321",
- "teamCode": "333",
- "firstName": "Jane",
- "lastName": "Doe",
- "email": "example@example.com",
- "phoneNumber": "3334445555",
- "state": "NC",
- "tzName": "America/New_York",
- "deliveryStatus": 202,
- "extendedAttributes": {
- "color": "red",
- "leadSourceId": "123456789",
- "priority": "high"
}
}, - "args": {
- "message": "Welcome!"
}
}{- "success": true,
- "requestId": "123e4567-e89b-12d3-a456-426614174000"
}| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
| file | string <binary> The file to upload |
{- "key": "Uploaded file key"
}Creates or updates a visitor with the provided payload and triggers the specified sequence.
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
| id required | string |
Request body containing visitor information to create/update and engage with the sequence.
required | object (VisitorInfo) |
{- "visitor": {
- "clientVisitorId": "12345",
- "clientAppId": "12345",
- "agentClientUserId": "12345",
- "teamCode": "333",
- "firstName": "Jane",
- "lastName": "Doe",
- "email": "customerEmail@example.com",
- "phoneNumber": "3334445555",
- "validPhoneNumbers": [
- "3334445555",
- "2223334444"
], - "state": "NC",
- "milestone": "SUPER",
- "visitorStatus": "Contacted",
- "tzName": "America/New_York",
- "deliveryStatus": 202
}
}{- "visitorId": "string",
- "visitorSequenceId": "string",
- "visitorUrl": "string",
- "success": true
}Update Visitor information including Agent Assignment using External ID
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
| idType required | string Type of the external Id. Currently supports 'clientVisitorId' and 'clientAppId' |
| idValue required | string Value of the 'idTye' specified. |
Visitor submit body
| updateOnly | boolean Will search for visitor ID. If visitor found, their info will be updated. If not found: |
| agentUpdate | boolean Allows agents already connected to be notified that message was sent to visitor. |
| retainAccess | boolean When visitor is transfered to another agent, this will allow the original agent to retain access. |
| retainPhones | boolean Option to add to existing phone number(s), otherwise will replace current phone number(s). |
object (VisitorInfo) |
{- "updateOnly": true,
- "agentUpdate": true,
- "retainAccess": true,
- "retainPhones": true,
- "visitor": {
- "clientVisitorId": "12345",
- "clientAppId": "12345",
- "agentClientUserId": "12345",
- "teamCode": "333",
- "firstName": "Jane",
- "lastName": "Doe",
- "email": "customerEmail@example.com",
- "phoneNumber": "3334445555",
- "validPhoneNumbers": [
- "3334445555",
- "2223334444"
], - "state": "NC",
- "milestone": "SUPER",
- "visitorStatus": "Contacted",
- "tzName": "America/New_York",
- "deliveryStatus": 202
}
}{- "id": "string",
- "clientVisitorId": "12345",
- "handle": "string",
- "agentId": "string",
- "agentClientUserId": "54321",
- "teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",
- "teamCode": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phoneNumber": "string",
- "pictureUrl": "string",
- "city": "string",
- "state": "NC",
- "milestone": "SUPER",
- "visitorStatus": "Contacted",
- "tzName": "America/New_York",
- "archived": true,
- "deliveryStatus": null
}Call Visitor Action by External ID such as clientVisitorId or clientAppId
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
| idType required | string Type of the external Id. Currently supports 'clientVisitorId' and 'clientAppId' |
| idValue required | string Value of the 'idTye' specified. |
| actionId required | string Action Id |
{- "id": "string",
- "clientVisitorId": "12345",
- "handle": "string",
- "agentId": "string",
- "agentClientUserId": "54321",
- "teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",
- "teamCode": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phoneNumber": "string",
- "pictureUrl": "string",
- "city": "string",
- "state": "NC",
- "milestone": "SUPER",
- "visitorStatus": "Contacted",
- "tzName": "America/New_York",
- "archived": true,
- "deliveryStatus": null
}Returns the list of meetings for the visitor matched by External ID
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
| idType required | string Type of the external Id. Currently supports 'clientVisitorId' and 'clientAppId' |
| idValue required | string Value of the 'idTye' specified. |
{- "visitorId": "string",
- "count": 0,
- "meetings": [
- { }
]
}Schedule a meeting for an existing visitor matched by External ID with the specified agent. The visitor must already exist or a 400 error is returned.
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
| idType required | string Type of the external Id. Currently supports 'clientVisitorId' and 'clientAppId' |
| idValue required | string Value of the 'idTye' specified. |
Meeting submit body
| agentClientUserId required | string Client-specific agent or employee ID the meeting is scheduled with. |
| followupAt required | string <date-time> Meeting date/time in ISO format. Must be a future date/time. |
| duration | integer Default: 30 Meeting duration in minutes. Defaults to 30. |
| notes | string Optional notes included with the meeting. |
| description | string Optional description for the meeting activity. Defaults to "Meeting scheduled via API". |
| additionalEmails | Array of strings Additional invitee email addresses. |
{- "agentClientUserId": "string",
- "followupAt": "2019-08-24T14:15:22Z",
- "duration": 30,
- "notes": "string",
- "description": "string",
- "additionalEmails": [
- "string"
]
}{- "success": true,
- "visitorId": "string",
- "meetingId": "string",
- "followupAt": "2019-08-24T14:15:22Z",
- "updateError": "string",
- "visitorUrl": "string"
}Send direct message to your visitors using their CRM ID and phone number. This enables external CRM applications to follow up a visitor without leaving CRM dashboard.
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
Visitor message request body.
| text required | string Message text to send to the visitor. |
object (VisitorInfo) |
{- "text": "Welcome!",
- "visitor": {
- "clientVisitorId": "12345",
- "clientAppId": "12345",
- "agentClientUserId": "12345",
- "teamCode": "333",
- "firstName": "Jane",
- "lastName": "Doe",
- "email": "customerEmail@example.com",
- "phoneNumber": "3334445555",
- "validPhoneNumbers": [
- "3334445555",
- "2223334444"
], - "state": "NC",
- "milestone": "SUPER",
- "visitorStatus": "Contacted",
- "tzName": "America/New_York",
- "deliveryStatus": 202
}
}{- "id": "string",
- "clientVisitorId": "12345",
- "handle": "string",
- "agentId": "string",
- "agentClientUserId": "54321",
- "teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",
- "teamCode": "string",
- "firstName": "string",
- "lastName": "string",
- "email": "string",
- "phoneNumber": "string",
- "pictureUrl": "string",
- "city": "string",
- "state": "NC",
- "milestone": "SUPER",
- "visitorStatus": "Contacted",
- "tzName": "America/New_York",
- "archived": true,
- "deliveryStatus": null
}Updates the visitor with phone numbers send in request params to respective status
| appId required | string Botsplash Account App Name or ID. App Name and ID can be found in "Settings" -> "App Info" -> "Company Info" -> "Identifier" textbox or "App ID" defined at the bottom of the page. |
Array of objects |
{- "items": [
- {
- "phoneNumber": "string",
- "status": "send"
}
]
}{- "success": true,
- "count": 0
}