API Reference
Create Agent
POST /api/v1/agents — create a new agent.
Creates a new agent. Any config field you don't provide is filled in from Elizon's defaults, so the minimal valid body is just a name.
POST /api/v1/agentsRequest body
| Field | Type | Required | Description |
|---|---|---|---|
name | string (1–128 chars) | Yes | Agent display name. |
description | string | null | No | Free-text description. |
projectId | string (UUID) | null | No | Project to create the agent in. Project-scoped keys only — silently ignored; the agent is always created in the key's own project. For org-scoped keys, omit/null for an org-level agent, or pass a project ID your organization owns. |
config | object | No | Partial agent configuration — model, memory, instructions, advanced settings. Deep-merged onto Elizon's defaults; any field you omit keeps its default. |
Config schema
The full config shape (model providers, memory settings, instructions, advanced execution flags)
is the same schema used by the Elizon Studio UI. Fetch available LLM providers first via
GET /agents/llm-providers if you need to
set config.model.primary.llm_config_id.
Response
201 Created — the created agent, same shape as GET /agents/:agentId:
{
"agentId": "3f9c1a2e-...",
"name": "Support Bot",
"description": null,
"status": "draft",
"projectId": null,
"config": { "...": "merged config, defaults applied" },
"configSchemaVersion": 1,
"createdAt": "2026-06-01T12:00:00.000Z",
"updatedAt": "2026-06-01T12:00:00.000Z"
}Errors
| Status | error | When |
|---|---|---|
400 | validation error ({ "errors": [{ "path", "message" }] }) | name/description/projectId fails validation, or the merged config fails schema validation |
422 | project_not_found | projectId doesn't belong to your organization |
422 | llm_configuration_not_found | config references an llm_config_id that doesn't exist or isn't connected |
Example
curl -X POST https://api.elizon.com/api/v1/agents \
-H "X-API-Key: elz_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"name": "Support Bot",
"description": "Handles Tier 1 support tickets",
"config": {
"model": { "primary": { "llm_config_id": "8b1e...-uuid" } }
}
}'