Manage voicebot workflows through the API.
All API requests require an API key to be included in the headers:
Authorization: Bearer [access-key]
https://voicebot.intron.health/voicebot/v1/workflows
Create a new workflow with customizable parameters.
Field | Type | Description | Required | Options | Default |
---|---|---|---|---|---|
name |
String | Name of the workflow | yes | ||
description |
String | Description of the workflow | no | ||
workflow_type |
String | Type of workflow | yes | ROBOCALL | CONVERSATION | ROBOCALL |
message |
String | Message template with variables | yes |
curl --location 'https://voicebot.intron.health/voicebot/v1/workflows' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--data '{
"name": "Integrator Workflow",
"description": "Workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}'
import requests
url = "https://voicebot.intron.health/voicebot/v1/workflows"
payload = {
"name": "Integrator Workflow",
"description": "Workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.json)
const requestOptions = {
method: "POST",
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
},
body: JSON.stringify({
"name": "Integrator Workflow",
"description": "Workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
})
};
fetch("https://voicebot.intron.health/voicebot/v1/workflows", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
{
"status": "Ok",
"message": "workflow created successfully",
"data": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Integrator Workflow",
"description": "Workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}
}
https://voicebot.intron.health/voicebot/v1/workflows
Retrieve a list of all workflows.
curl --location 'https://voicebot.intron.health/voicebot/v1/workflows' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
import requests
url = "https://voicebot.intron.health/voicebot/v1/workflows"
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
response = requests.request("GET", url, headers=headers)
print(response.json)
const requestOptions = {
method: "GET",
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
}
};
fetch("https://voicebot.intron.health/voicebot/v1/workflows", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
{
"status": "Ok",
"message": "workflows retrieved successfully",
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Integrator Workflow",
"description": "Workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}
]
}
https://voicebot.intron.health/voicebot/v1/workflows/
:workflow_id
Retrieve details of a specific workflow.
Field | Type | Description | Required | Default | Options |
---|---|---|---|---|---|
workflow_id |
String | The unique identifier of the workflow | yes |
curl --location 'https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
import requests
url = "https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000"
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
response = requests.request("GET", url, headers=headers)
print(response.json)
const requestOptions = {
method: "GET",
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
}
};
fetch("https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
{
"status": "Ok",
"message": "workflow retrieved successfully",
"data": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Integrator Workflow",
"description": "Workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}
}
https://voicebot.intron.health/voicebot/v1/workflows/
:workflow_id
Update an existing workflow's details.
Field | Type | Description | Required | Default | Options |
---|---|---|---|---|---|
workflow_id |
String | The unique identifier of the workflow to update | yes |
Field | Type | Description | Required | Options | Default |
---|---|---|---|---|---|
name |
String | Name of the workflow | no | ||
description |
String | Description of the workflow | no | ||
workflow_type |
String | Type of workflow | no | ROBOCALL | CONVERSATION | ROBOCALL |
message |
String | Message template with variables | no |
curl --location --request PUT 'https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--data '{
"name": "Updated Integrator Workflow",
"description": "Updated workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}'
import requests
url = "https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000"
payload = {
"name": "Updated Integrator Workflow",
"description": "Updated workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
response = requests.request("PUT", url, headers=headers, json=payload)
print(response.json)
const requestOptions = {
method: "PUT",
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
},
body: JSON.stringify({
"name": "Updated Integrator Workflow",
"description": "Updated workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
})
};
fetch("https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
{
"status": "Ok",
"message": "workflow updated successfully",
"data": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"name": "Updated Integrator Workflow",
"description": "Updated workflow description V2",
"workflow_type": "ROBOCALL",
"message": "Hello [name], your appointment is scheduled for [date] at [time]"
}
}
https://voicebot.intron.health/voicebot/v1/workflows/
:workflow_id
Delete an existing workflow.
Field | Type | Description | Required | Default | Options |
---|---|---|---|---|---|
workflow_id |
String | The unique identifier of the workflow to delete | yes |
curl --location --request DELETE 'https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN'
import requests
url = "https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000"
headers = {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
response = requests.request("DELETE", url, headers=headers)
print(response.json)
const requestOptions = {
method: "DELETE",
headers: {
'Authorization': 'Bearer YOUR_ACCESS_TOKEN'
}
};
fetch("https://voicebot.intron.health/voicebot/v1/workflows/123e4567-e89b-12d3-a456-426614174000", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
{
"status": "Ok",
"message": "workflow deleted successfully",
"data": {}
}