---
title: "Set Approval Mode"
method: POST
path: "/api/users/me/approval-mode"
tags: ["Approval", "approval"]
---

# Set Approval Mode

`POST /api/users/me/approval-mode`

## Request

- Base URL: `https://api.primetime.media` (the document declares no server; this is the origin it was published from)
- URL: `https://api.primetime.media/api/users/me/approval-mode`
- Auth: none declared
- TypeScript: <https://skmtc.dev/primetime/apis/primetime-media-api/docs/api/users/me/approval-mode/post.ts> (a function with typed inputs; its response is checked against the schema)

Switch modes.

-> Approve each batch: users.approval_mode = TRUE, then the standing
   grant is revoked at Google and forgotten, so the "no credential that
   can change your channel" line is true from this moment. The response
   tells the dashboard to send the creator through login again (which
   asks only for the read-only set). Live changes stay live.
-> Automatic: users.approval_mode = FALSE; the dashboard then opens
   /api/approve/grant-write for the offline write grant (one Google
   screen). Until that completes, holds_write_scope stays false and the
   nightly push keeps staging instead of pushing for this creator.

## Request body

- ApprovalModeBody
  - `approval_mode` boolean, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-23** `5e268fd807eb`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/primetime/apis/primetime-media-api/changes/api/users/me/approval-mode/post.md)

---

[API](https://skmtc.dev/primetime/apis/primetime-media-api.md) - [All operations](https://skmtc.dev/primetime/apis/primetime-media-api/llms.txt) - [OpenAPI document](https://skmtc.dev/primetime/apis/primetime-media-api/revisions/5e268fd807eb?raw)
