Elizon Docs
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/agents

Request body

FieldTypeRequiredDescription
namestring (1–128 chars)YesAgent display name.
descriptionstring | nullNoFree-text description.
projectIdstring (UUID) | nullNoProject 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.
configobjectNoPartial 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

StatuserrorWhen
400validation error ({ "errors": [{ "path", "message" }] })name/description/projectId fails validation, or the merged config fails schema validation
422project_not_foundprojectId doesn't belong to your organization
422llm_configuration_not_foundconfig 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" } }
    }
  }'