---
title: "Create optimizer config with initial blueprint"
method: POST
path: "/v1/private/agent-configs/blueprints"
tags: ["Agent Configs"]
---

# Create optimizer config with initial blueprint

`POST /v1/private/agent-configs/blueprints`

Creates a new optimizer config with initial blueprint. Fails if the project already has a config.

## Request body

- AgentConfigCreateWrite
  - `project_id` string, uuid — Project ID. Either project_id or project_name must be provided
  - `project_name` string — Project name. Either project_id or project_name must be provided
  - `id` string, uuid — Agent config ID. Generated automatically if not provided
  - `blueprint` AgentBlueprintWrite, required
    - `id` string, uuid
    - `type` 'blueprint' | 'mask', required
    - `description` string
    - `values` AgentConfigValueWrite[], required
      - `key` string, required
      - `value` string
      - `type` 'string' | 'integer' | 'float' | 'boolean' | 'prompt' | 'prompt_commit', required
      - `description` string

## Response `201`

Created

## Other responses

- `400` — Bad Request (e.g. MASK type not allowed)
- `401` — Unauthorized
- `409` — Conflict (config already exists)

---

[API](https://skmtc.net/comet-ml/apis/opik-rest-api.md) · [All operations](https://skmtc.net/comet-ml/apis/opik-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/comet-ml/opik-rest-api/versions/4ed2fbc97cc3/schema)
