Voiceflow bearer token
Create many functions
curl --request POST \
--url https://realtime-api.voiceflow.com/v1/stable/function/batch \
--header 'Authorization: Bearer <token>'
--header 'Content-Type: application/json' \
--data '{
"functions": [
{
"name": "<string>",
"code": "<string>",
"settings": "<FunctionSettings>",
"description": "<string>"
}
]
}'const response = await fetch('https://realtime-api.voiceflow.com/v1/stable/function/batch?projectID=<projectID>&environmentAlias=<environmentAlias>', {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"functions": [
{
"name": "<string>",
"code": "<string>",
"settings": "<FunctionSettings>",
"description": "<string>"
}
]
}),
});
const data = await response.json();import requests
response = requests.post(
'https://realtime-api.voiceflow.com/v1/stable/function/batch?projectID=<projectID>&environmentAlias=<environmentAlias>',
headers={'Authorization': 'Bearer <token>'},
json={
"functions": [
{
"name": "<string>",
"code": "<string>",
"settings": "<FunctionSettings>",
"description": "<string>"
}
]
},
)
data = response.json()vf function create-many --project-id <projectID> --environment-alias <environmentAlias> \
< body.json{
"functions": [
{
"id": "<string>",
"name": "<string>",
"code": "<string>",
"image": "<string>",
"settings": "<FunctionSettings>",
"createdAt": "2026-09-10T00:00:00.000Z",
"updatedAt": "2026-09-10T00:00:00.000Z",
"pathOrder": [
"<string>"
],
"description": "<string>"
}
]
}Adds several functions to the environment in one request, each taking the fields the single-create call takes. The response carries the created functions in the same shape the list call returns.
POST
/v1/stable/function/batch
Create many functions
curl --request POST \
--url https://realtime-api.voiceflow.com/v1/stable/function/batch \
--header 'Authorization: Bearer <token>'
--header 'Content-Type: application/json' \
--data '{
"functions": [
{
"name": "<string>",
"code": "<string>",
"settings": "<FunctionSettings>",
"description": "<string>"
}
]
}'const response = await fetch('https://realtime-api.voiceflow.com/v1/stable/function/batch?projectID=<projectID>&environmentAlias=<environmentAlias>', {
method: 'POST',
headers: {
Authorization: 'Bearer <token>',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"functions": [
{
"name": "<string>",
"code": "<string>",
"settings": "<FunctionSettings>",
"description": "<string>"
}
]
}),
});
const data = await response.json();import requests
response = requests.post(
'https://realtime-api.voiceflow.com/v1/stable/function/batch?projectID=<projectID>&environmentAlias=<environmentAlias>',
headers={'Authorization': 'Bearer <token>'},
json={
"functions": [
{
"name": "<string>",
"code": "<string>",
"settings": "<FunctionSettings>",
"description": "<string>"
}
]
},
)
data = response.json()vf function create-many --project-id <projectID> --environment-alias <environmentAlias> \
< body.json{
"functions": [
{
"id": "<string>",
"name": "<string>",
"code": "<string>",
"image": "<string>",
"settings": "<FunctionSettings>",
"createdAt": "2026-09-10T00:00:00.000Z",
"updatedAt": "2026-09-10T00:00:00.000Z",
"pathOrder": [
"<string>"
],
"description": "<string>"
}
]
}Authorizations
Query Parameters
Body
Response
201 - application/jsonCreates every function in the request and returns them all, each with its own ID, stored JavaScript source, and exit path order.
Show child attributes
Was this page helpful?
Thanks for your feedback.