SMS Conversation Analysis
curl --request POST \
--url https://api.bland.ai/v1/sms/analyze \
--header 'Content-Type: application/json' \
--header 'authorization: <authorization>' \
--data '
{
"schema_id": "<string>",
"conversation_id": "<string>"
}
'import requests
url = "https://api.bland.ai/v1/sms/analyze"
payload = {
"schema_id": "<string>",
"conversation_id": "<string>"
}
headers = {
"authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({schema_id: '<string>', conversation_id: '<string>'})
};
fetch('https://api.bland.ai/v1/sms/analyze', 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/sms/analyze",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'schema_id' => '<string>',
'conversation_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bland.ai/v1/sms/analyze"
payload := strings.NewReader("{\n \"schema_id\": \"<string>\",\n \"conversation_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
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/sms/analyze")
.header("authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"schema_id\": \"<string>\",\n \"conversation_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/sms/analyze")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"schema_id\": \"<string>\",\n \"conversation_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"status": "success",
"conversation_id": "conv_123456",
"schema_id": "schema_789",
"schema_name": "Customer Intent Analysis",
"variables_extracted": 5,
"extracted_variables": {
"customer_name": "John Smith",
"preferred_time": "morning",
"service_type": "moving",
"urgency": "high",
"budget_range": "$500-1000"
},
"citations": [
{
"variable": "customer_name",
"message": "Hi, this is John Smith calling about...",
"confidence": 0.95
}
],
"messages_processed": 12
},
"errors": []
}
Messaging
SMS Conversation Analysis
Answer questions and extract information from an SMS conversation.
POST
/
v1
/
sms
/
analyze
SMS Conversation Analysis
curl --request POST \
--url https://api.bland.ai/v1/sms/analyze \
--header 'Content-Type: application/json' \
--header 'authorization: <authorization>' \
--data '
{
"schema_id": "<string>",
"conversation_id": "<string>"
}
'import requests
url = "https://api.bland.ai/v1/sms/analyze"
payload = {
"schema_id": "<string>",
"conversation_id": "<string>"
}
headers = {
"authorization": "<authorization>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {authorization: '<authorization>', 'Content-Type': 'application/json'},
body: JSON.stringify({schema_id: '<string>', conversation_id: '<string>'})
};
fetch('https://api.bland.ai/v1/sms/analyze', 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/sms/analyze",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'schema_id' => '<string>',
'conversation_id' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.bland.ai/v1/sms/analyze"
payload := strings.NewReader("{\n \"schema_id\": \"<string>\",\n \"conversation_id\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("authorization", "<authorization>")
req.Header.Add("Content-Type", "application/json")
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/sms/analyze")
.header("authorization", "<authorization>")
.header("Content-Type", "application/json")
.body("{\n \"schema_id\": \"<string>\",\n \"conversation_id\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bland.ai/v1/sms/analyze")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["authorization"] = '<authorization>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"schema_id\": \"<string>\",\n \"conversation_id\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"status": "success",
"conversation_id": "conv_123456",
"schema_id": "schema_789",
"schema_name": "Customer Intent Analysis",
"variables_extracted": 5,
"extracted_variables": {
"customer_name": "John Smith",
"preferred_time": "morning",
"service_type": "moving",
"urgency": "high",
"budget_range": "$500-1000"
},
"citations": [
{
"variable": "customer_name",
"message": "Hi, this is John Smith calling about...",
"confidence": 0.95
}
],
"messages_processed": 12
},
"errors": []
}
Headers
string
required
Your API key for authentication.
Body
string
required
The ID of the citation schema to use for extracting variables from the SMS conversation.
string
required
The ID of the SMS conversation to analyze.
Response
object
The response data containing analysis results.
Show data
Show data
string
The status of the analysis operation. Returns “success” on successful completion.
string
The ID of the SMS conversation that was analyzed.
string
The ID of the citation schema that was used for analysis.
string
The name of the citation schema that was used.
number
The total number of variables that were successfully extracted from the conversation.
object
An object containing the extracted variables as key-value pairs, where keys are variable names and values are the extracted data.
array
number
The total number of messages in the conversation that were processed.
array
An array of error objects. Empty array when the request is successful.
{
"data": {
"status": "success",
"conversation_id": "conv_123456",
"schema_id": "schema_789",
"schema_name": "Customer Intent Analysis",
"variables_extracted": 5,
"extracted_variables": {
"customer_name": "John Smith",
"preferred_time": "morning",
"service_type": "moving",
"urgency": "high",
"budget_range": "$500-1000"
},
"citations": [
{
"variable": "customer_name",
"message": "Hi, this is John Smith calling about...",
"confidence": 0.95
}
],
"messages_processed": 12
},
"errors": []
}
Docs for agents: llms.txt
Was this page helpful?
⌘I