---
title: "Create optimization"
method: POST
path: "/v1/private/optimizations"
tags: ["Optimizations"]
---

# Create optimization

`POST /v1/private/optimizations`

Create optimization

## Request body

- OptimizationWrite
  - `id` string, uuid
  - `name` string
  - `dataset_name` string, required
  - `project_name` string — Project name. Creates project if it doesn't exist. Ignored when project_id is provided.
  - `project_id` string, uuid — Project ID. Takes precedence over project_name when both are provided.
  - `objective_name` string, required
  - `status` 'running' | 'completed' | 'cancelled' | 'initialized' | 'error', required
  - `metadata` JsonListStringWrite
  - `studio_config` OptimizationStudioConfigWrite
    - `dataset_name` string, required
    - `prompt` StudioPromptWrite, required
      - `messages` StudioMessageWrite[], required
        - `role` string, required
        - `content` string, required
    - `llm_model` StudioLlmModelWrite, required
      - `model` string, required
      - `parameters` JsonNodeWrite
    - `evaluation` StudioEvaluationWrite, required
      - `metrics` StudioMetricWrite[], required
        - `type` string, required
        - `parameters` JsonNodeWrite
    - `optimizer` StudioOptimizerWrite, required
      - `type` string, required
      - `parameters` JsonNodeWrite
  - `error_info` ErrorInfoWrite
    - `exception_type` string, required
    - `message` string
    - `traceback` string, required
  - `last_updated_at` string, date-time

## Response `201`

Created

---

[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)
