Table Management
Create Table Columns
Create new columns in the table.
POST
/
v1
/
tables
/
{table_id}
/
columns
Create Table Columns
curl --request POST \
--url https://api.extruct.ai/v1/tables/{table_id}/columns \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"column_configs": [
{
"kind": "agent",
"name": "Company Description",
"key": "description",
"value": {
"agent_type": "research_pro",
"prompt": "Research the company {input} and provide a short description.",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Company Linkedin URL",
"key": "linkedin_url",
"value": {
"agent_type": "research_pro",
"prompt": "Find linkedin profile URL of the company {input}",
"output_format": "url"
}
},
{
"kind": "agent",
"name": "Company Linkedin Data",
"key": "linkedin_data",
"value": {
"agent_type": "linkedin",
"prompt": "{linkedin_url}",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Linkedin Activity Summary",
"key": "linkedin_activity",
"value": {
"agent_type": "llm",
"prompt": "Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}",
"output_format": "text"
}
}
],
"insert_after": true
}
'import requests
url = "https://api.extruct.ai/v1/tables/{table_id}/columns"
payload = {
"column_configs": [
{
"kind": "agent",
"name": "Company Description",
"key": "description",
"value": {
"agent_type": "research_pro",
"prompt": "Research the company {input} and provide a short description.",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Company Linkedin URL",
"key": "linkedin_url",
"value": {
"agent_type": "research_pro",
"prompt": "Find linkedin profile URL of the company {input}",
"output_format": "url"
}
},
{
"kind": "agent",
"name": "Company Linkedin Data",
"key": "linkedin_data",
"value": {
"agent_type": "linkedin",
"prompt": "{linkedin_url}",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Linkedin Activity Summary",
"key": "linkedin_activity",
"value": {
"agent_type": "llm",
"prompt": "Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}",
"output_format": "text"
}
}
],
"insert_after": True
}
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({
column_configs: [
{
kind: 'agent',
name: 'Company Description',
key: 'description',
value: {
agent_type: 'research_pro',
prompt: 'Research the company {input} and provide a short description.',
output_format: 'text'
}
},
{
kind: 'agent',
name: 'Company Linkedin URL',
key: 'linkedin_url',
value: {
agent_type: 'research_pro',
prompt: 'Find linkedin profile URL of the company {input}',
output_format: 'url'
}
},
{
kind: 'agent',
name: 'Company Linkedin Data',
key: 'linkedin_data',
value: {agent_type: 'linkedin', prompt: '{linkedin_url}', output_format: 'text'}
},
{
kind: 'agent',
name: 'Linkedin Activity Summary',
key: 'linkedin_activity',
value: {
agent_type: 'llm',
prompt: 'Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}',
output_format: 'text'
}
}
],
insert_after: true
})
};
fetch('https://api.extruct.ai/v1/tables/{table_id}/columns', 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.extruct.ai/v1/tables/{table_id}/columns",
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([
'column_configs' => [
[
'kind' => 'agent',
'name' => 'Company Description',
'key' => 'description',
'value' => [
'agent_type' => 'research_pro',
'prompt' => 'Research the company {input} and provide a short description.',
'output_format' => 'text'
]
],
[
'kind' => 'agent',
'name' => 'Company Linkedin URL',
'key' => 'linkedin_url',
'value' => [
'agent_type' => 'research_pro',
'prompt' => 'Find linkedin profile URL of the company {input}',
'output_format' => 'url'
]
],
[
'kind' => 'agent',
'name' => 'Company Linkedin Data',
'key' => 'linkedin_data',
'value' => [
'agent_type' => 'linkedin',
'prompt' => '{linkedin_url}',
'output_format' => 'text'
]
],
[
'kind' => 'agent',
'name' => 'Linkedin Activity Summary',
'key' => 'linkedin_activity',
'value' => [
'agent_type' => 'llm',
'prompt' => 'Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}',
'output_format' => 'text'
]
]
],
'insert_after' => true
]),
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.extruct.ai/v1/tables/{table_id}/columns"
payload := strings.NewReader("{\n \"column_configs\": [\n {\n \"kind\": \"agent\",\n \"name\": \"Company Description\",\n \"key\": \"description\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Research the company {input} and provide a short description.\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin URL\",\n \"key\": \"linkedin_url\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Find linkedin profile URL of the company {input}\",\n \"output_format\": \"url\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin Data\",\n \"key\": \"linkedin_data\",\n \"value\": {\n \"agent_type\": \"linkedin\",\n \"prompt\": \"{linkedin_url}\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Linkedin Activity Summary\",\n \"key\": \"linkedin_activity\",\n \"value\": {\n \"agent_type\": \"llm\",\n \"prompt\": \"Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}\",\n \"output_format\": \"text\"\n }\n }\n ],\n \"insert_after\": true\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.extruct.ai/v1/tables/{table_id}/columns")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"column_configs\": [\n {\n \"kind\": \"agent\",\n \"name\": \"Company Description\",\n \"key\": \"description\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Research the company {input} and provide a short description.\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin URL\",\n \"key\": \"linkedin_url\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Find linkedin profile URL of the company {input}\",\n \"output_format\": \"url\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin Data\",\n \"key\": \"linkedin_data\",\n \"value\": {\n \"agent_type\": \"linkedin\",\n \"prompt\": \"{linkedin_url}\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Linkedin Activity Summary\",\n \"key\": \"linkedin_activity\",\n \"value\": {\n \"agent_type\": \"llm\",\n \"prompt\": \"Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}\",\n \"output_format\": \"text\"\n }\n }\n ],\n \"insert_after\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extruct.ai/v1/tables/{table_id}/columns")
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 \"column_configs\": [\n {\n \"kind\": \"agent\",\n \"name\": \"Company Description\",\n \"key\": \"description\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Research the company {input} and provide a short description.\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin URL\",\n \"key\": \"linkedin_url\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Find linkedin profile URL of the company {input}\",\n \"output_format\": \"url\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin Data\",\n \"key\": \"linkedin_data\",\n \"value\": {\n \"agent_type\": \"linkedin\",\n \"prompt\": \"{linkedin_url}\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Linkedin Activity Summary\",\n \"key\": \"linkedin_activity\",\n \"value\": {\n \"agent_type\": \"llm\",\n \"prompt\": \"Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}\",\n \"output_format\": \"text\"\n }\n }\n ],\n \"insert_after\": true\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"config": {
"name": "<string>",
"key": "<string>",
"kind": "input"
}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Overview
This endpoint adds columns to an existing table. It is the normal way to grow a workflow step by step instead of locking the full schema upfront. This works especially well when you:- start with a minimal table and add enrichment later
- test a few columns before rolling out the full workflow
- add new scoring or research fields to a table that already has data
Example request
export EXTRUCT_API_TOKEN="YOUR_API_TOKEN"
export TABLE_ID="YOUR_TABLE_ID"
curl -X POST "https://api.extruct.ai/v1/tables/${TABLE_ID}/columns" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${EXTRUCT_API_TOKEN}" \
-d '{
"column_configs": [
{
"kind": "agent",
"name": "Description",
"key": "description",
"value": {
"agent_type": "research_pro",
"prompt": "Describe what the company does in 2 sentences.",
"output_format": "text"
}
}
],
"insert_after": true
}'
Key parameters
table_id(required): target table identifier.column_configs(required): list of new column config objects.insert_after(optional): defaults totrue; can betrue,false, or a column ID string.
Success signal
A successful response includes updated column definitions for the table.Common errors
401 Unauthorized
Check that your header is Authorization: Bearer ${EXTRUCT_API_TOKEN}.
404 Not Found
The table ID is invalid or unavailable in your workspace.
422 Unprocessable Entity
Most often caused by invalid column_configs shape or unsupported insert_after value.
Related endpoints
Related guides
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Body
application/json
column_configs
(InputColumnConfig · object | AgentColumnConfig · object | CriterionGradeColumnConfig · object | PeopleFinderColumnConfig · object | DiscoveryScoresColumnConfig · object | CompanyNameColumnConfig · object | CompanyWebsiteColumnConfig · object | CompanyProfileColumnConfig · object | EmailFinderColumnConfig · object | PhoneFinderColumnConfig · object | ReverseEmailLookupColumnConfig · object)[]
required
- InputColumnConfig
- AgentColumnConfig
- CriterionGradeColumnConfig
- PeopleFinderColumnConfig
- DiscoveryScoresColumnConfig
- CompanyNameColumnConfig
- CompanyWebsiteColumnConfig
- CompanyProfileColumnConfig
- EmailFinderColumnConfig
- PhoneFinderColumnConfig
- ReverseEmailLookupColumnConfig
Show child attributes
Show child attributes
Insert new columns after this column id. If true (default), insert in the end. If false, insert in the beginning.
Response
Successful Response
- InputColumnConfig
- AgentColumnConfig
- CriterionGradeColumnConfig
- PeopleFinderColumnConfig
- DiscoveryScoresColumnConfig
- CompanyNameColumnConfig
- CompanyWebsiteColumnConfig
- CompanyProfileColumnConfig
- EmailFinderColumnConfig
- PhoneFinderColumnConfig
- ReverseEmailLookupColumnConfig
Show child attributes
Show child attributes
⌘I
Create Table Columns
curl --request POST \
--url https://api.extruct.ai/v1/tables/{table_id}/columns \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"column_configs": [
{
"kind": "agent",
"name": "Company Description",
"key": "description",
"value": {
"agent_type": "research_pro",
"prompt": "Research the company {input} and provide a short description.",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Company Linkedin URL",
"key": "linkedin_url",
"value": {
"agent_type": "research_pro",
"prompt": "Find linkedin profile URL of the company {input}",
"output_format": "url"
}
},
{
"kind": "agent",
"name": "Company Linkedin Data",
"key": "linkedin_data",
"value": {
"agent_type": "linkedin",
"prompt": "{linkedin_url}",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Linkedin Activity Summary",
"key": "linkedin_activity",
"value": {
"agent_type": "llm",
"prompt": "Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}",
"output_format": "text"
}
}
],
"insert_after": true
}
'import requests
url = "https://api.extruct.ai/v1/tables/{table_id}/columns"
payload = {
"column_configs": [
{
"kind": "agent",
"name": "Company Description",
"key": "description",
"value": {
"agent_type": "research_pro",
"prompt": "Research the company {input} and provide a short description.",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Company Linkedin URL",
"key": "linkedin_url",
"value": {
"agent_type": "research_pro",
"prompt": "Find linkedin profile URL of the company {input}",
"output_format": "url"
}
},
{
"kind": "agent",
"name": "Company Linkedin Data",
"key": "linkedin_data",
"value": {
"agent_type": "linkedin",
"prompt": "{linkedin_url}",
"output_format": "text"
}
},
{
"kind": "agent",
"name": "Linkedin Activity Summary",
"key": "linkedin_activity",
"value": {
"agent_type": "llm",
"prompt": "Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}",
"output_format": "text"
}
}
],
"insert_after": True
}
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({
column_configs: [
{
kind: 'agent',
name: 'Company Description',
key: 'description',
value: {
agent_type: 'research_pro',
prompt: 'Research the company {input} and provide a short description.',
output_format: 'text'
}
},
{
kind: 'agent',
name: 'Company Linkedin URL',
key: 'linkedin_url',
value: {
agent_type: 'research_pro',
prompt: 'Find linkedin profile URL of the company {input}',
output_format: 'url'
}
},
{
kind: 'agent',
name: 'Company Linkedin Data',
key: 'linkedin_data',
value: {agent_type: 'linkedin', prompt: '{linkedin_url}', output_format: 'text'}
},
{
kind: 'agent',
name: 'Linkedin Activity Summary',
key: 'linkedin_activity',
value: {
agent_type: 'llm',
prompt: 'Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}',
output_format: 'text'
}
}
],
insert_after: true
})
};
fetch('https://api.extruct.ai/v1/tables/{table_id}/columns', 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.extruct.ai/v1/tables/{table_id}/columns",
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([
'column_configs' => [
[
'kind' => 'agent',
'name' => 'Company Description',
'key' => 'description',
'value' => [
'agent_type' => 'research_pro',
'prompt' => 'Research the company {input} and provide a short description.',
'output_format' => 'text'
]
],
[
'kind' => 'agent',
'name' => 'Company Linkedin URL',
'key' => 'linkedin_url',
'value' => [
'agent_type' => 'research_pro',
'prompt' => 'Find linkedin profile URL of the company {input}',
'output_format' => 'url'
]
],
[
'kind' => 'agent',
'name' => 'Company Linkedin Data',
'key' => 'linkedin_data',
'value' => [
'agent_type' => 'linkedin',
'prompt' => '{linkedin_url}',
'output_format' => 'text'
]
],
[
'kind' => 'agent',
'name' => 'Linkedin Activity Summary',
'key' => 'linkedin_activity',
'value' => [
'agent_type' => 'llm',
'prompt' => 'Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}',
'output_format' => 'text'
]
]
],
'insert_after' => true
]),
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.extruct.ai/v1/tables/{table_id}/columns"
payload := strings.NewReader("{\n \"column_configs\": [\n {\n \"kind\": \"agent\",\n \"name\": \"Company Description\",\n \"key\": \"description\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Research the company {input} and provide a short description.\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin URL\",\n \"key\": \"linkedin_url\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Find linkedin profile URL of the company {input}\",\n \"output_format\": \"url\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin Data\",\n \"key\": \"linkedin_data\",\n \"value\": {\n \"agent_type\": \"linkedin\",\n \"prompt\": \"{linkedin_url}\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Linkedin Activity Summary\",\n \"key\": \"linkedin_activity\",\n \"value\": {\n \"agent_type\": \"llm\",\n \"prompt\": \"Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}\",\n \"output_format\": \"text\"\n }\n }\n ],\n \"insert_after\": true\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.extruct.ai/v1/tables/{table_id}/columns")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"column_configs\": [\n {\n \"kind\": \"agent\",\n \"name\": \"Company Description\",\n \"key\": \"description\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Research the company {input} and provide a short description.\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin URL\",\n \"key\": \"linkedin_url\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Find linkedin profile URL of the company {input}\",\n \"output_format\": \"url\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin Data\",\n \"key\": \"linkedin_data\",\n \"value\": {\n \"agent_type\": \"linkedin\",\n \"prompt\": \"{linkedin_url}\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Linkedin Activity Summary\",\n \"key\": \"linkedin_activity\",\n \"value\": {\n \"agent_type\": \"llm\",\n \"prompt\": \"Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}\",\n \"output_format\": \"text\"\n }\n }\n ],\n \"insert_after\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extruct.ai/v1/tables/{table_id}/columns")
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 \"column_configs\": [\n {\n \"kind\": \"agent\",\n \"name\": \"Company Description\",\n \"key\": \"description\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Research the company {input} and provide a short description.\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin URL\",\n \"key\": \"linkedin_url\",\n \"value\": {\n \"agent_type\": \"research_pro\",\n \"prompt\": \"Find linkedin profile URL of the company {input}\",\n \"output_format\": \"url\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Company Linkedin Data\",\n \"key\": \"linkedin_data\",\n \"value\": {\n \"agent_type\": \"linkedin\",\n \"prompt\": \"{linkedin_url}\",\n \"output_format\": \"text\"\n }\n },\n {\n \"kind\": \"agent\",\n \"name\": \"Linkedin Activity Summary\",\n \"key\": \"linkedin_activity\",\n \"value\": {\n \"agent_type\": \"llm\",\n \"prompt\": \"Based on the company Linkedin profile data, summarize the recent activity as a bulleted list with names, dates and links. Data: {linkedin_data}\",\n \"output_format\": \"text\"\n }\n }\n ],\n \"insert_after\": true\n}"
response = http.request(request)
puts response.read_body[
{
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"config": {
"name": "<string>",
"key": "<string>",
"kind": "input"
}
}
]{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}