Skip to main content
POST
/
1
/
agents
Create Agent
curl --request POST \
  --url https://{APPLICATION_ID}.algolia.net/agent-studio/1/agents \
  --header 'Content-Type: application/json' \
  --header 'X-Algolia-API-Key: <x-algolia-api-key>' \
  --header 'X-Algolia-Application-Id: <x-algolia-application-id>' \
  --data '
{
  "name": "<string>",
  "instructions": "<string>",
  "description": "<string>",
  "providerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "model": "<string>",
  "systemPrompt": "<string>",
  "templateType": "<string>",
  "config": {},
  "tools": [
    {
      "name": "<string>",
      "description": "<string>",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [
          "<string>"
        ]
      },
      "type": "client_side"
    }
  ]
}
'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "name": "<string>",
  "description": "<string>",
  "status": "draft",
  "providerId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "instructions": "<string>",
  "config": {},
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "lastUsedAt": "2023-11-07T05:31:56Z",
  "model": "<string>",
  "systemPrompt": "<string>",
  "tools": [
    {
      "name": "<string>",
      "description": "<string>",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": [
          "<string>"
        ]
      },
      "type": "client_side"
    }
  ],
  "templateType": "<string>"
}
Required ACL: editSettings

Headers

X-Algolia-API-Key
string
required
X-Algolia-Application-Id
string
required

Body

application/json
name
string
required
instructions
string
required

The agent prompt: defines the agent's role, tone, and goals. Guides how it answers using the provided context. Corresponds to the 'Agent prompt' field in the dashboard.

description
string | null
providerId
string<uuid> | null
model
string | null
systemPrompt
string | null

The system prompt: defines system-level rules and constraints. Guides how the agent uses tools, features, and generates context. Prepended before instructions in the final prompt sent to the LLM. Typically injected by an agent template — modify with caution, as changes may affect behavior, tool usage, or response accuracy. Corresponds to the 'System prompt' field in the dashboard.

templateType
string | null
config
Config · object
Examples:

"sendUsage: true"

"sendReasoning: true"

"temperature: 0.7"

"max_tokens: 1500"

"reasoning: {summary: auto}"

"features: [memory]"

tools
(ClientSideToolConfig · object | AlgoliaSearchToolConfig · object | AlgoliaRecommendToolConfig · object | McpServerToolConfig · object | UnknownToolConfig · object)[]

Response

Successful Response

id
string<uuid>
required
name
string
required
description
string | null
required
status
enum<string>
required
Available options:
draft,
published
providerId
string<uuid> | null
required
instructions
string
required
config
Config · object
required
createdAt
string<date-time>
required
updatedAt
string<date-time> | null
required
lastUsedAt
string<date-time> | null
required
model
string | null
systemPrompt
string | null
tools
(ClientSideToolConfig · object | AlgoliaSearchToolConfig · object | AlgoliaRecommendToolConfig · object | McpServerToolConfig · object | UnknownToolConfig · object)[]
templateType
string | null
Last modified on March 5, 2026