# create

Endpoint: POST /api/agents
Version: 1.0.0
Security: ApiKeyAuth

## Request fields (application/json):

  - `data` (object, required)

  - `data.type` (string, required)

  - `data.attributes` (object, required)

  - `data.attributes.name` (string, required)

  - `data.attributes.projectId` (string, required)

  - `data.attributes.modelType` (string, required)

  - `data.attributes.maxToolIterations` (integer)

  - `data.attributes.temperature` (number)

  - `data.attributes.variables` (array)

  - `data.attributes.variables.name` (string, required)

  - `data.attributes.variables.targetKnowledgeBaseId` (string)

  - `data.attributes.variables.targetFunction` (string, required)

  - `data.attributes.variables.toolTargetId` (string, required)

  - `data.attributes.variables.toolTargetType` (string, required)

  - `data.attributes.variables.functionArgumentsText` (string)

  - `data.attributes.reasoningEffort` (string)
    Overall reasoning effort for the agent.
For models whose name matches "gpt-oss-*", only "LOW", "MEDIUM", and "HIGH"
are supported; "NONE" and "MINIMAL" are not valid for gpt-oss-* models.
    Enum: "NONE", "MINIMAL", "LOW", "MEDIUM", "HIGH"

  - `data.attributes.systemPrompt` (string,null)

  - `data.attributes.starterMessage` (string,null)

  - `data.attributes.outputs` (array)

  - `data.attributes.outputs.name` (string, required)

  - `data.attributes.outputs.functionName` (string, required)

  - `data.attributes.outputs.functionDescription` (string)

  - `data.attributes.outputs.jsonSchema` (string, required)

  - `data.attributes.outputs.artifactType` (string)
    Enum: "IMAGE_ID_OUTPUT", "MARKDOWN_TEXT_OUTPUT", "REACT_OUTPUT", "PRESENTATION"

  - `data.attributes.outputs.artifactContentType` (string)
    Enum: same as `data.attributes.outputs.artifactType` (4 values)

  - `data.attributes.tools` (array)

  - `data.attributes.tools.toolTargetId` (string, required)

  - `data.attributes.tools.toolTargetType` (string, required)

  - `data.attributes.tools.targetFunction` (string, required)

  - `data.attributes.tools.functionName` (string, required)

  - `data.attributes.tools.functionDescription` (string)

  - `data.attributes.tools.agentOutputMode` (string,null)
    Enum: "RETURN", "SHOW"

  - `data.attributes.tools.agentPromptSchema` (string)

  - `data.attributes.tools.agentPromptTemplate` (string)

  - `data.attributes.tools.inheritChatFiles` (boolean)

## Response 201 fields (application/vnd.api+json):

  - `data` (object, required)

  - `data.id` (string, required)

  - `data.type` (string, required)

  - `data.links` (object, required)

  - `data.links.self` (string, required)

  - `data.attributes` (object, required)

  - `data.attributes.createdAt` (string, required)

  - `data.attributes.updatedAt` (string, required)

  - `data.attributes.projectId` (string, required)

  - `data.attributes.name` (string, required)

  - `data.attributes.systemPrompt` (string, required)

  - `data.attributes.starterMessage` (string,null, required)

  - `data.attributes.modelType` (string, required)

  - `data.attributes.maxToolIterations` (integer, required)

  - `data.attributes.temperature` (number, required)

  - `data.attributes.reasoningEffort` (string, required)
    Enum: same as `data.attributes.reasoningEffort` (5 values)

  - `data.attributes.isManaged` (boolean, required)

  - `data.attributes.outputs` (array, required)

  - `data.attributes.outputs.name` (string, required)

  - `data.attributes.outputs.functionName` (string, required)

  - `data.attributes.outputs.functionDescription` (string,null, required)

  - `data.attributes.outputs.jsonSchema` (string, required)

  - `data.attributes.outputs.artifactType` (string,null, required)
    Enum: same as `data.attributes.outputs.artifactType` (4 values)

  - `data.attributes.outputs.artifactContentType` (string,null, required)
    Enum: same as `data.attributes.outputs.artifactType` (4 values)

  - `data.attributes.tools` (array, required)

  - `data.attributes.tools.toolTargetId` (string, required)

  - `data.attributes.tools.targetFunction` (string, required)

  - `data.attributes.tools.functionName` (string, required)

  - `data.attributes.tools.functionDescription` (string,null, required)

  - `data.attributes.tools.agentOutputMode` (string, required)
    Enum: same as `data.attributes.tools.agentOutputMode` (2 values)

  - `data.attributes.tools.agentPromptSchema` (string,null, required)

  - `data.attributes.tools.agentPromptTemplate` (string,null, required)

  - `data.attributes.tools.toolTargetType` (string, required)

  - `data.attributes.tools.inheritChatFiles` (boolean, required)

  - `data.attributes.tools.targetType` (string, required)

  - `data.attributes.tools.targetKnowledgeBaseId` (string,null, required)

  - `data.attributes.tools.targetAgentId` (string,null, required)

  - `data.attributes.variables` (array, required)

  - `data.attributes.variables.name` (string, required)

  - `data.attributes.variables.toolTargetId` (string, required)

  - `data.attributes.variables.targetFunction` (string, required)

  - `data.attributes.variables.functionArgumentsText` (string,null)

  - `data.attributes.variables.toolTargetType` (string, required)

  - `data.attributes.variables.targetKnowledgeBaseId` (string,null)

## Response 400 fields (application/vnd.api+json):

  - `errors` (array, required)

  - `errors.title` (string, required)

  - `errors.detail` (string, required)

  - `errors.code` (string, required)

  - `errors.status` (string, required)

## Response 401 fields (application/json):

  - `status` (string, required)

  - `error` (string, required)

## Response 403 fields (application/json):

  - `status` (string, required)

  - `error` (string, required)

## Response 422 fields (application/vnd.api+json):

  - `errors` (array, required)

  - `errors.title` (string, required)

  - `errors.detail` (string, required)

  - `errors.code` (string, required)

  - `errors.source` (object, required)

  - `errors.source.pointer` (string, required)

  - `errors.status` (string, required)

  - `errors.meta` (object, required)

  - `errors.meta.validationCode` (string, required)


