Promote Persona Version
curl --request POST \
--url https://api.bland.ai/v1/personas/{persona_id}/versions/promote \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v1/personas/{persona_id}/versions/promote"
headers = {"authorization": "<authorization>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {authorization: '<authorization>'}};
fetch('https://api.bland.ai/v1/personas/{persona_id}/versions/promote', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.bland.ai/v1/personas/{persona_id}/versions/promote",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.bland.ai/v1/personas/{persona_id}/versions/promote"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.bland.ai/v1/personas/{persona_id}/versions/promote")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/personas/{persona_id}/versions/promote")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": {
"id": "12345678-1234-1234-1234-123456789012",
"name": "Blandy",
"role": null,
"description": "Helpful Agent for Bland Documentation",
"tags": [],
"image_url": null,
"created_at": "2025-09-23T15:13:36.348Z",
"updated_at": "2025-09-23T15:55:57.284Z",
"deleted_at": null,
"user_id": "12345678-1234-1234-1234-123456789012",
"current_production_version_id": "12345678-1234-1234-1234-123456789012",
"current_draft_version_id": "12345678-1234-1234-1234-123456789013",
"current_production_version": {
"id": "12345678-1234-1234-1234-123456789012",
"persona_id": "12345678-1234-1234-1234-123456789012",
"version_type": "production",
"version_number": 3,
"orchestration_prompt": null,
"personality_prompt": "You are a helpful assistant",
"pathway_conditions": null,
"kb_ids": [],
"call_config": null,
"default_tools": [],
"promoted_from_version_id": "12345678-1234-1234-1234-123456789013",
"promoted_at": "2025-09-23T15:55:57.262Z",
"promoted_by": "12345678-1234-1234-1234-123456789012",
"created_at": "2025-09-23T15:55:57.263Z",
"updated_at": "2025-09-23T15:55:57.263Z"
},
"current_draft_version": {
"id": "12345678-1234-1234-1234-123456789013",
"persona_id": "12345678-1234-1234-1234-123456789012",
"version_type": "draft",
"version_number": 2,
"orchestration_prompt": null,
"personality_prompt": "You are a helpful assistant",
"pathway_conditions": null,
"kb_ids": [],
"call_config": null,
"default_tools": [],
"promoted_from_version_id": "12345678-1234-1234-1234-123456789012",
"promoted_at": null,
"promoted_by": null,
"created_at": "2025-09-23T15:13:36.390Z",
"updated_at": "2025-09-23T15:13:36.390Z"
}
},
"errors": null
}
{
"data": null,
"errors": [
{
"error": "NO_DRAFT_VERSION",
"message": "No draft version to promote",
"details": {
"persona_id": "12345678-1234-1234-1234-123456789012"
}
}
]
}
Versions
Promote Persona Version
Promote a persona’s draft version to production.
POST
/
v1
/
personas
/
{persona_id}
/
versions
/
promote
Promote Persona Version
curl --request POST \
--url https://api.bland.ai/v1/personas/{persona_id}/versions/promote \
--header 'authorization: <authorization>'import requests
url = "https://api.bland.ai/v1/personas/{persona_id}/versions/promote"
headers = {"authorization": "<authorization>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {authorization: '<authorization>'}};
fetch('https://api.bland.ai/v1/personas/{persona_id}/versions/promote', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.bland.ai/v1/personas/{persona_id}/versions/promote",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"authorization: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.bland.ai/v1/personas/{persona_id}/versions/promote"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.bland.ai/v1/personas/{persona_id}/versions/promote")
.header("authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/personas/{persona_id}/versions/promote")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": {
"id": "12345678-1234-1234-1234-123456789012",
"name": "Blandy",
"role": null,
"description": "Helpful Agent for Bland Documentation",
"tags": [],
"image_url": null,
"created_at": "2025-09-23T15:13:36.348Z",
"updated_at": "2025-09-23T15:55:57.284Z",
"deleted_at": null,
"user_id": "12345678-1234-1234-1234-123456789012",
"current_production_version_id": "12345678-1234-1234-1234-123456789012",
"current_draft_version_id": "12345678-1234-1234-1234-123456789013",
"current_production_version": {
"id": "12345678-1234-1234-1234-123456789012",
"persona_id": "12345678-1234-1234-1234-123456789012",
"version_type": "production",
"version_number": 3,
"orchestration_prompt": null,
"personality_prompt": "You are a helpful assistant",
"pathway_conditions": null,
"kb_ids": [],
"call_config": null,
"default_tools": [],
"promoted_from_version_id": "12345678-1234-1234-1234-123456789013",
"promoted_at": "2025-09-23T15:55:57.262Z",
"promoted_by": "12345678-1234-1234-1234-123456789012",
"created_at": "2025-09-23T15:55:57.263Z",
"updated_at": "2025-09-23T15:55:57.263Z"
},
"current_draft_version": {
"id": "12345678-1234-1234-1234-123456789013",
"persona_id": "12345678-1234-1234-1234-123456789012",
"version_type": "draft",
"version_number": 2,
"orchestration_prompt": null,
"personality_prompt": "You are a helpful assistant",
"pathway_conditions": null,
"kb_ids": [],
"call_config": null,
"default_tools": [],
"promoted_from_version_id": "12345678-1234-1234-1234-123456789012",
"promoted_at": null,
"promoted_by": null,
"created_at": "2025-09-23T15:13:36.390Z",
"updated_at": "2025-09-23T15:13:36.390Z"
}
},
"errors": null
}
{
"data": null,
"errors": [
{
"error": "NO_DRAFT_VERSION",
"message": "No draft version to promote",
"details": {
"persona_id": "12345678-1234-1234-1234-123456789012"
}
}
]
}
Headers
string
required
Your API key for authentication.
Path Parameters
string
required
The unique identifier of the persona whose draft version should be promoted.
Response
object
The updated persona object after promotion.
Show persona object
Show persona object
string
Unique identifier for the persona.
string
Display name of the persona.
string
Role assigned to the persona.
string
Description of the persona’s purpose.
array
Array of tags associated with the persona.
string
URL of the persona’s profile image (null if none).
string
ISO 8601 timestamp of when the persona was created.
string
ISO 8601 timestamp of when the persona was last modified.
string
ISO 8601 timestamp of when the persona was deleted (null if active).
string
ID of the user who owns this persona.
string
ID of the current production version (updated after promotion).
string
ID of the current draft version.
object
Complete production version object (the newly promoted version).
object
Complete draft version object (same as before promotion).
string
Any errors that occurred (null if none).
{
"data": {
"id": "12345678-1234-1234-1234-123456789012",
"name": "Blandy",
"role": null,
"description": "Helpful Agent for Bland Documentation",
"tags": [],
"image_url": null,
"created_at": "2025-09-23T15:13:36.348Z",
"updated_at": "2025-09-23T15:55:57.284Z",
"deleted_at": null,
"user_id": "12345678-1234-1234-1234-123456789012",
"current_production_version_id": "12345678-1234-1234-1234-123456789012",
"current_draft_version_id": "12345678-1234-1234-1234-123456789013",
"current_production_version": {
"id": "12345678-1234-1234-1234-123456789012",
"persona_id": "12345678-1234-1234-1234-123456789012",
"version_type": "production",
"version_number": 3,
"orchestration_prompt": null,
"personality_prompt": "You are a helpful assistant",
"pathway_conditions": null,
"kb_ids": [],
"call_config": null,
"default_tools": [],
"promoted_from_version_id": "12345678-1234-1234-1234-123456789013",
"promoted_at": "2025-09-23T15:55:57.262Z",
"promoted_by": "12345678-1234-1234-1234-123456789012",
"created_at": "2025-09-23T15:55:57.263Z",
"updated_at": "2025-09-23T15:55:57.263Z"
},
"current_draft_version": {
"id": "12345678-1234-1234-1234-123456789013",
"persona_id": "12345678-1234-1234-1234-123456789012",
"version_type": "draft",
"version_number": 2,
"orchestration_prompt": null,
"personality_prompt": "You are a helpful assistant",
"pathway_conditions": null,
"kb_ids": [],
"call_config": null,
"default_tools": [],
"promoted_from_version_id": "12345678-1234-1234-1234-123456789012",
"promoted_at": null,
"promoted_by": null,
"created_at": "2025-09-23T15:13:36.390Z",
"updated_at": "2025-09-23T15:13:36.390Z"
}
},
"errors": null
}
{
"data": null,
"errors": [
{
"error": "NO_DRAFT_VERSION",
"message": "No draft version to promote",
"details": {
"persona_id": "12345678-1234-1234-1234-123456789012"
}
}
]
}
Docs for agents: llms.txt
Was this page helpful?
⌘I