curl --request GET \
--url https://api.example.com/api/v1/sender-profiles/search/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/v1/sender-profiles/search/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/v1/sender-profiles/search/', 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.example.com/api/v1/sender-profiles/search/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
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://api.example.com/api/v1/sender-profiles/search/"
req, _ := http.NewRequest("GET", 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.get("https://api.example.com/api/v1/sender-profiles/search/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/sender-profiles/search/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"user_id": "<string>",
"profile_name": "<string>",
"sender_data": {
"data": {}
},
"id": "<string>",
"description": "<string>",
"prompt_names": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"usage_count": 0,
"is_default": false,
"send_mechanism": "bavimail",
"connected_mailbox_account": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Search Sender Profiles
Search sender profiles by name (B2b read cutover).
Searches through the actor’s org profiles for those matching the search query. Search is case-insensitive and matches partial names.
Args: query: Search query string org_context: Resolved org scope for the actor settings: Application settings limit: Maximum number of profiles to return (default: 20)
Returns: List of matching sender profiles
curl --request GET \
--url https://api.example.com/api/v1/sender-profiles/search/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/v1/sender-profiles/search/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/v1/sender-profiles/search/', 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.example.com/api/v1/sender-profiles/search/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
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://api.example.com/api/v1/sender-profiles/search/"
req, _ := http.NewRequest("GET", 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.get("https://api.example.com/api/v1/sender-profiles/search/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/sender-profiles/search/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"user_id": "<string>",
"profile_name": "<string>",
"sender_data": {
"data": {}
},
"id": "<string>",
"description": "<string>",
"prompt_names": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"usage_count": 0,
"is_default": false,
"send_mechanism": "bavimail",
"connected_mailbox_account": "<string>"
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Response
Successful Response
User ID who owns this profile
User-friendly name for this profile (e.g., 'Sales Team Profile', 'Personal Brand')
1 - 100The actual sender data with arbitrary fields
Show child attributes
Show child attributes
Unique profile identifier
Optional description of when/how to use this profile
500Names of saved prompts on this profile (from sender_data.prompts[].name). Body/text intentionally omitted from list/search responses to keep payloads light and avoid leaking long prompt bodies into the campaign launcher.
Profile creation timestamp
Last update timestamp
Number of times this profile has been used
Whether this is the default profile
Outbound send mechanism bound to this sender identity.
bavimail, gmail, outlook Connected mailbox account key, e.g. the Gmail address.