---
title: "Update Experiment"
method: PUT
path: "/api/v1/geo/experiments/{experiment_id}"
tags: ["geo-monitoring", "geo-hotels"]
---

# Update Experiment

`PUT /api/v1/geo/experiments/{experiment_id}`

Update an experiment's config (samples/models/daily scan). Editable any
time — Draft or approved (no locking).

## Path parameters

- `experiment_id` string, uuid, required

## Request body

- GeoExperimentUpdate — Config update for an experiment (PUT /experiments/{id}). Editable at any time — Draft or approved (no locking). ``None`` on any field leaves it unchanged; ``model_by_platform`` is a partial map merged into the experiment's existing selection, an explicit empty map clears it.
  - `samples_per_prompt` integer, nullable
  - `model_by_platform` object, nullable
  - `daily_scan_enabled` boolean, nullable
  - `daily_scan_hour` integer, nullable
  - `title` string, nullable

## Response `200`

Successful Response

- GeoExperimentRead
  - `id` string, uuid, required
  - `tenant_id` string, uuid, required
  - `geo_hotel_id` string, uuid, required
  - `sequence_number` integer, required
  - `title` string, nullable
  - `approved_at` string, date-time, nullable
  - `daily_scan_enabled` boolean
  - `daily_scan_hour` integer, nullable
  - `samples_per_prompt` integer, nullable
  - `model_by_platform` object
  - `group_id` string, uuid, nullable
  - `position` object

## Other responses

- `404` — Experiment not found
- `422` — Validation Error

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getanana/cleon-api/revisions/c0f54348e251/schema)
