Generate Report
curl --request POST \
--url https://api.everbility.com/v1/public/clients/{client_id}/reports/generate \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"template_id": "<string>",
"note_ids": [
"<string>"
],
"title": "<string>"
}
'import requests
url = "https://api.everbility.com/v1/public/clients/{client_id}/reports/generate"
payload = {
"template_id": "<string>",
"note_ids": ["<string>"],
"title": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({template_id: '<string>', note_ids: ['<string>'], title: '<string>'})
};
fetch('https://api.everbility.com/v1/public/clients/{client_id}/reports/generate', 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.everbility.com/v1/public/clients/{client_id}/reports/generate",
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([
'template_id' => '<string>',
'note_ids' => [
'<string>'
],
'title' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.everbility.com/v1/public/clients/{client_id}/reports/generate"
payload := strings.NewReader("{\n \"template_id\": \"<string>\",\n \"note_ids\": [\n \"<string>\"\n ],\n \"title\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.everbility.com/v1/public/clients/{client_id}/reports/generate")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"template_id\": \"<string>\",\n \"note_ids\": [\n \"<string>\"\n ],\n \"title\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.everbility.com/v1/public/clients/{client_id}/reports/generate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"template_id\": \"<string>\",\n \"note_ids\": [\n \"<string>\"\n ],\n \"title\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"job_id": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Report generation
Generate Report
Start backend report creation from a template ID and note IDs. If the template contains prompt nodes, the backend generates those sections from the supplied notes. If the template contains no prompt nodes, the backend saves the template content directly as a report. The response returns a job_id immediately; poll GET /v1/public/jobs/ until the job completes.
POST
/
v1
/
public
/
clients
/
{client_id}
/
reports
/
generate
Generate Report
curl --request POST \
--url https://api.everbility.com/v1/public/clients/{client_id}/reports/generate \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"template_id": "<string>",
"note_ids": [
"<string>"
],
"title": "<string>"
}
'import requests
url = "https://api.everbility.com/v1/public/clients/{client_id}/reports/generate"
payload = {
"template_id": "<string>",
"note_ids": ["<string>"],
"title": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({template_id: '<string>', note_ids: ['<string>'], title: '<string>'})
};
fetch('https://api.everbility.com/v1/public/clients/{client_id}/reports/generate', 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.everbility.com/v1/public/clients/{client_id}/reports/generate",
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([
'template_id' => '<string>',
'note_ids' => [
'<string>'
],
'title' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.everbility.com/v1/public/clients/{client_id}/reports/generate"
payload := strings.NewReader("{\n \"template_id\": \"<string>\",\n \"note_ids\": [\n \"<string>\"\n ],\n \"title\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.everbility.com/v1/public/clients/{client_id}/reports/generate")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"template_id\": \"<string>\",\n \"note_ids\": [\n \"<string>\"\n ],\n \"title\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.everbility.com/v1/public/clients/{client_id}/reports/generate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"template_id\": \"<string>\",\n \"note_ids\": [\n \"<string>\"\n ],\n \"title\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"job_id": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Use a Clerk-backed Everbility user or organisation API key directly as the bearer token.
Path Parameters
Response
Successful Response
⌘I