Creating Trackers with Async API
In Beta
This feature is in Beta. If you have questions or comments, emailΒ support@symbl.ai.
Symbl provides a set of Async APIs based on audio, video, or text content. For more details see Async API.
The Trackers, once processed by the request, try to detect Trackers in the Conversation. Once the job is complete, you can fetch the Trackers from the Conversation API through the /trackers
endpoint described in this article.
Creating Trackers with Management API
While you can create Trackers with Async or Streaming APIs, Symbl recommendeds creating Trackers using the Management API. Trackers created using the Management API are saved and can be reused while the same is not possible with Async or Streaming APIs.
Async Audio File APIβ
The Tracker entities should be passed as a query parameter in the Async Audio APIβs URL as shown below.
tip
Before creating the Trackers, go through the Best Practices document to learn about the dos and don'ts of the Tracker vocabulary creation.
If you want to create multiple trackers, use Trackers Management API for bulk creation. The Trackers Management API handles all the Trackers you have created at your account level and makes it easy to maintain them.
Authenticationβ
Before using the API, ensure that you have your Authentication Token (AUTH_TOKEN
) handy. To learn about how to get your auth token, see the step-by-step instructions on the Authentication page.
API Endpointβ
"https"://api.symbl.ai/v1/process/audio?trackers=[
{
"name":"COVID-19",
"vocabulary":[
"social distancing",
"cover your face with mask",
"vaccination"
]
}
]
Request Headersβ
Header Name | Required | Description |
---|---|---|
Authorization | Mandatory | Bearer <token> The token you get from our authentication process. |
Content-Type | Optional | application/json This header must contain the MIME Type of the audio fileβs container. |
x-api-key | Optional | DEPRECATED. The JWT token you get from our authentication process. |
Async Audio URL APIβ
The Tracker entities should be passed in as a member of the request body of the Async Audio URL API like shown below:
API Endpointβ
POST https://api.symbl.ai/v1/process/audio/url
Request Headerβ
Header Name | Required | Description |
---|---|---|
Authorization | Mandatory | Bearer <token> The token you get from our authentication process. |
Content-Type | Mandatory | application/json This header must contain the MIME Type of the audio fileβs container. |
x-api-key | Optional | DEPRECATED. The JWT token you get from our authentication process. |
Request Bodyβ
{
"url": "<PUBLIC_AUDIO_FILE_URL>",
"confidenceThreshold": 0.6,
"timezoneOffset": 0,
"trackers": [
{
"name": "Promotion Mention",
"vocabulary": [
"We have a special promotion going on if you book this before",
"I can offer you a discount of 10 20 percent you being a new customer for us",
"We have our month special this month",
"We have a sale right now on"
]
}
]
}
Notice that the trackers member follows the same structure as mentioned in the Trackers section above.
Responseβ
{
"conversationId": "5815170693595136",
"jobId": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"
}
Async Video File APIβ
The Tracker entities should be passed in as a query parameter in the Async Video APIβs URL like shown below:
API Endpointβ
"https"://api.symbl.ai/v1/process/video?trackers=[
{
"name":"COVID-19",
"vocabulary":[
"social distancing",
"cover your face with mask",
"vaccination"
]
}
]
Request Headerβ
Header Name | Required | Description |
---|---|---|
Authorization | Mandatory | Bearer <token> The token you get from our authentication process. |
Content-Type | Optional | application/json This header must contain the MIME Type of the audio fileβs container. |
x-api-key | Optional | DEPRECATED. The JWT token you get from our authentication process. |
Notice that the trackers query parameter follows the same structure as mentioned in the Trackers section above.
Responseβ
{
"conversationId": "5815170693595136",
"jobId": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"
}
Async Video URL APIβ
The Tracker entities should be passed in as a member of the request body of the Async Video URL API like shown below:
API Endpointβ
POST https://api.symbl.ai/v1/process/video/url
Request Headersβ
Header Name | Required | Description |
---|---|---|
Authorization | Mandatory | Bearer <token> The token you get from our authentication process. |
Content-Type | Mandatory | application/json This header must contain the MIME Type application/json. |
x-api-key | Optional | DEPRECATED. The JWT token you get from our authentication process. |
Request Bodyβ
{
"url": "<PUBLIC_VIDEO_FILE_URL>",
"confidenceThreshold": 0.6,
"timezoneOffset": 0,
"trackers": [
{
"name": "Promotion Mention",
"vocabulary": [
"We have a special promotion going on if you book this before",
"I can offer you a discount of 10 20 percent you being a new customer for us",
"We have our month special this month",
"We have a sale right now on"
]
}
]
}
Notice that the trackers member follows the same structure as mentioned in the Trackers section above.
Responseβ
{
"conversationId": "5815170693595136",
"jobId": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"
}
Async Text APIβ
The Tracker entities should be passed in as a member of the request body of the Async Text API like shown below:
API Endpointβ
POST https://api.symbl.ai/v1/process/text
Request Headersβ
Header Name | Required | Description |
---|---|---|
Authorization | Mandatory | Bearer <token> The token you get from our authentication process. |
Content-Type | Mandatory | application/json This header must contain the MIME Type application/json. |
x-api-key | Optional | DEPRECATED. The JWT token you get from our authentication process. |
Request Bodyβ
{
"name": "My Sales Conversation",
"conversationType": [
"sales"
],
"messages": [
{
"payload": {
"content": "<CONVERSATION_PAYLOAD>",
"contentType": "text/plain"
},
"from": {
"name": "John",
"userId": "john@example.com"
}
}
],
"trackers": [
{
"name": "Promotion Mention",
"vocabulary": [
"We have a special promotion going on if you book this before",
"I can offer you a discount of 10 20 percent you being a new customer for us",
"We have our month special this month",
"We have a sale right now on"
]
}
]
}
Notice that the trackers member follows the same structure as the Trackers section above.
Responseβ
{
"conversationId": "5815170693595136",
"jobId": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"
}