Infer column metadata from a prompt
post
/v1/custom-columns/inferAI endpoint: infers a column name, type, and icon from a natural-language prompt. Rate-limited per workspace (20 req/min).
Requires a bearer token: Authorization: Bearer <token>.
Request
cURL
curl -X POST https://api.wellapp.ai/v1/custom-columns/infer \
-H "Authorization: Bearer $WELL_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"data": {
"type": "custom_column_infer",
"attributes": {
"prompt": "How many days each invoice from Anthropic is overdue",
"root": "invoices"
}
}
}'Request body
{
"data": {
"type": "custom_column_infer",
"attributes": {
"prompt": "How many days each invoice from Anthropic is overdue",
"root": "invoices"
}
}
}Responses
200 — Inferred column metadata (name, type, icon).
{
"data": {
"type": "custom_column_infer",
"attributes": {
"name": "Burn risk",
"type": "number",
"icon": "calendar"
}
}
}400 — Validation error.
{
"code": "BAD_REQUEST",
"status": 400,
"title": "Bad Request",
"message": "See title.",
"meta": {
"trace_id": "a1b2c3",
"log_id": "a1b2c3"
}
}401 — Unauthorized.
{
"code": "UNAUTHORIZED",
"status": 401,
"title": "Unauthorized",
"message": "See title.",
"meta": {
"trace_id": "a1b2c3",
"log_id": "a1b2c3"
}
}429 — AI rate limit exceeded (20 req/min).
{
"code": "RATE_LIMIT_EXCEEDED",
"status": 429,
"title": "Too Many Requests",
"message": "See title.",
"meta": {
"trace_id": "a1b2c3",
"log_id": "a1b2c3"
}
}