---
title: "Upsert a tenant controlled-action approval policy"
method: POST
path: "/tenant/approval-policies"
---

# Upsert a tenant controlled-action approval policy

`POST /tenant/approval-policies`

## 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/tenant/approval-policies`
- Auth: HTTP bearer

## Request body

- object
  - `id` string
  - `platform_account_id` string
  - `action_type` string, required
  - `max_delta_percent` number
  - `max_budget_delta_amount` number
  - `required_role` 'viewer' | 'optimizer' | 'operator' | 'approver' | 'tenant_admin' | 'gravity_ops' | 'admin' | 'owner'
  - `allow_self_approval` boolean
  - `status` 'active' | 'inactive'

## Response `200`

Tenant approval policy upserted

- object

---

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