curl --request POST \
--url https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": {
"segments": [
{
"text": "<string>",
"type": "text"
}
]
},
"inputs": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>"
}
]
}
'import requests
url = "https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/"
payload = {
"prompt": { "segments": [
{
"text": "<string>",
"type": "text"
}
] },
"inputs": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<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({
prompt: {segments: [{text: '<string>', type: 'text'}]},
inputs: [{id: '3c90c3cc-0d44-4b50-8888-8dd25736052a', name: '<string>'}]
})
};
fetch('https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/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.getoneprofile.ai/table-enrichments/saved-agents/outputs/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([
'prompt' => [
'segments' => [
[
'text' => '<string>',
'type' => 'text'
]
]
],
'inputs' => [
[
'id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'name' => '<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.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/"
payload := strings.NewReader("{\n \"prompt\": {\n \"segments\": [\n {\n \"text\": \"<string>\",\n \"type\": \"text\"\n }\n ]\n },\n \"inputs\": [\n {\n \"id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\"\n }\n ]\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.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": {\n \"segments\": [\n {\n \"text\": \"<string>\",\n \"type\": \"text\"\n }\n ]\n },\n \"inputs\": [\n {\n \"id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/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 \"prompt\": {\n \"segments\": [\n {\n \"text\": \"<string>\",\n \"type\": \"text\"\n }\n ]\n },\n \"inputs\": [\n {\n \"id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"output_schema": {
"fields": [
{
"name": "<string>",
"choices": [
"<string>"
],
"description": "<string>",
"field_type": "text"
}
],
"mode": "fields"
}
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Derive an output schema from a prompt
Read a prompt and propose the typed fields the agent should return. Nothing is stored — the caller drops the result into the editor and decides what to keep.
curl --request POST \
--url https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": {
"segments": [
{
"text": "<string>",
"type": "text"
}
]
},
"inputs": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>"
}
]
}
'import requests
url = "https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/"
payload = {
"prompt": { "segments": [
{
"text": "<string>",
"type": "text"
}
] },
"inputs": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<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({
prompt: {segments: [{text: '<string>', type: 'text'}]},
inputs: [{id: '3c90c3cc-0d44-4b50-8888-8dd25736052a', name: '<string>'}]
})
};
fetch('https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/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.getoneprofile.ai/table-enrichments/saved-agents/outputs/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([
'prompt' => [
'segments' => [
[
'text' => '<string>',
'type' => 'text'
]
]
],
'inputs' => [
[
'id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'name' => '<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.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/"
payload := strings.NewReader("{\n \"prompt\": {\n \"segments\": [\n {\n \"text\": \"<string>\",\n \"type\": \"text\"\n }\n ]\n },\n \"inputs\": [\n {\n \"id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\"\n }\n ]\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.getoneprofile.ai/table-enrichments/saved-agents/outputs/generate/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": {\n \"segments\": [\n {\n \"text\": \"<string>\",\n \"type\": \"text\"\n }\n ]\n },\n \"inputs\": [\n {\n \"id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getoneprofile.ai/table-enrichments/saved-agents/outputs/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 \"prompt\": {\n \"segments\": [\n {\n \"text\": \"<string>\",\n \"type\": \"text\"\n }\n ]\n },\n \"inputs\": [\n {\n \"id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"output_schema": {
"fields": [
{
"name": "<string>",
"choices": [
"<string>"
],
"description": "<string>",
"field_type": "text"
}
],
"mode": "fields"
}
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>",
"issues": [
{
"input": "<string>",
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "<string>"
}{
"detail": "<string>"
}{
"detail": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
A prompt to derive an output schema from.
A saved agent's prompt: literal text with references between the runs.
The same convention every other stored prompt in the product uses
(EnrichmentPromptTemplate for columns, template segments for
sequences): identity-keyed segments, so renaming what a reference points
at never rewrites the prompt. Structurally parallel to the enrichment
template rather than importing it — an agent prompt references INPUTS,
an enrichment prompt references COLUMNS, and the import hierarchy keeps
the two domains apart.
Show child attributes
Show child attributes
20Show child attributes
Show child attributes
Response
Successful Response
The generated output schema, ready to drop into the editor.
The fields-mode output shape: repeatable named typed fields.
The default is Clay's: one text field named response.
- EnrichmentOutputFields
- EnrichmentOutputRawSchema
Show child attributes
Show child attributes
Was this page helpful?