---
title: "Read-only optimizer workflow: save_search_selection"
method: POST
path: "/workflow/save_search_selection"
---

# Read-only optimizer workflow: save_search_selection

`POST /workflow/save_search_selection`

## Request

- Base URL: `https://api.gravityads.dev` (the document declares no server; this is the origin it was published from)
- URL: `https://api.gravityads.dev/workflow/save_search_selection`
- Auth: HTTP bearer

## Request body

- object
  - `run_id` string, required
  - `revision` integer, required
  - `selections` Local4SearchSelection[], required
    - `row_id` string, required
    - `match_type` 'EXACT' | 'PHRASE' | 'BROAD'
    - `rationale` string, required
    - `brand_reviewed` boolean, required
    - `exclusion_scope` 'ad_group' | 'campaign'

## Response `200`

Authorized workflow state; no platform writes

- object

## Other responses

- `400`: Invalid workflow request
- `403`: Access denied

---

[API](https://skmtc.dev/gravityads/apis/gravityads-api.md) · [All operations](https://skmtc.dev/gravityads/apis/gravityads-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gravityads/apis/gravityads-api/revisions/124cd07d534d?raw)
