curl --request POST \
--url https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}', 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://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}",
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: Bearer <token>"
],
]);
$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://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"code": 200,
"id": "60e9ca73c500a9001534ad84",
"content": "They lead with Correctness and steady habits: calm, thorough, and careful with commitments, they set a measured pace and expect clean execution. Highly organized yet very flexible, they can pivot when needed without drama, but they still prefer clear plans, few surprises, and time to get the details right. They communicate sparingly and straight to the point, often choosing quiet focus over group chatter, which can make them seem reserved, though teammates learn they’re dependable and consistent. They’re motivated by Freedom to run their lane, Wealth tied to measurable outcomes, and Wisdom gained from digging into how things work; they dislike sloppy work, public criticism, and rushed changes that upend hard-won order.\n",
"ratings": [
{
"user": "60e9ca73c500a9001534ad84",
"rating": 1,
"comments": "This was pretty helpful to summarize their report."
}
],
"status": "success"
}{
"code": 400,
"error": {
"message": "Invalid request body",
"timestamp": "2025-01-01T09:42:52.329056-05:00"
},
"status": "error"
}{
"code": 401,
"error": {
"message": "Invalid token",
"timestamp": "2025-01-01T09:42:52.329056-05:00"
},
"status": "error"
}Generate AI Debrief
Returns a Playbook AI generated debrief for the individual profile specified. If one has been generated with the current available data already, it simply returns the expected debrief. If new data or a new AI model are available it generates a new debrief with a flag indicating that it is new.
curl --request POST \
--url https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}', 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://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}",
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: Bearer <token>"
],
]);
$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://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://vanguard.profilebehavior.com/api/v4/playbook/ai/debrief/{profileId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"code": 200,
"id": "60e9ca73c500a9001534ad84",
"content": "They lead with Correctness and steady habits: calm, thorough, and careful with commitments, they set a measured pace and expect clean execution. Highly organized yet very flexible, they can pivot when needed without drama, but they still prefer clear plans, few surprises, and time to get the details right. They communicate sparingly and straight to the point, often choosing quiet focus over group chatter, which can make them seem reserved, though teammates learn they’re dependable and consistent. They’re motivated by Freedom to run their lane, Wealth tied to measurable outcomes, and Wisdom gained from digging into how things work; they dislike sloppy work, public criticism, and rushed changes that upend hard-won order.\n",
"ratings": [
{
"user": "60e9ca73c500a9001534ad84",
"rating": 1,
"comments": "This was pretty helpful to summarize their report."
}
],
"status": "success"
}{
"code": 400,
"error": {
"message": "Invalid request body",
"timestamp": "2025-01-01T09:42:52.329056-05:00"
},
"status": "error"
}{
"code": 401,
"error": {
"message": "Invalid token",
"timestamp": "2025-01-01T09:42:52.329056-05:00"
},
"status": "error"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
The ID of the profile to generate and retrieve debrief content for.
Response
Success
Standard response object for successful single-resource requests in the Profile Behavior API. Contains an HTTP status code, the returned resource data, and a status indicator.
HTTP status code of the successful response.
Always "success" for successful responses.
success The ID of the debrief content document.
The generated text content debrief meant to help summarize the data of the profile indicated by the profileId
An array of user-submitted ratings indicating whether they thought the debrief was good or not, as well as any comments they may have about the given content.
Show child attributes
Show child attributes
Was this page helpful?