> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tryvoicestudio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Find and approve reviews

> Watch the current video before approving its exact review.

## Find what needs your attention

Grant `reviews:read` and ask:

```text theme={null}
Show my pending VoiceStudio reviews. For each one, give me the project,
video, language and a direct link so I can watch it. Do not approve anything.
```

Open the returned link and review the video. A result includes `subjectRevision`, which identifies the version being reviewed, and `approvable`, which indicates whether the review is pending and supports API approval. Your connection also needs the approval permission and your account's current review rights.

## Approve a specific review

You need the optional `reviews:approve` permission and an administrator or reviewer role in the company. After watching the video, tell the assistant exactly which review to approve:

```text theme={null}
I watched the French translation of Product introduction.
Read its current VoiceStudio review and approve that exact version.
If the review has changed, stop and ask me to watch it again.
```

VoiceStudio checks the current pending review and its version. If someone changed or decided it, the request fails with a conflict. Read the current review and make a new decision rather than retrying a stale version.

Translation and lip-sync reviews can be approved through the API and MCP. Reviews requiring an audition choice link back to the VoiceStudio app. Approval does not create an export or override another reviewer’s decision.

## Approve from code

Read `GET /reviews/{reviewId}` first. Use its current `subjectRevision`, and generate a UUID for the idempotency key:

```bash theme={null}
curl --request POST \
  'https://api.tryvoicestudio.com/v1/reviews/01900000-0000-7000-8000-000000000002/approve' \
  -H "x-api-key: $VOICESTUDIO_API_KEY" \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: 01900000-0000-7000-8000-000000000003' \
  --data '{"expectedSubjectRevision":5}'
```

Replace all example values with the review you inspected and a new UUID. Reuse that UUID only when retrying the identical decision after an interrupted response. Reusing it with different inputs returns a conflict. The actor and decision are recorded in VoiceStudio’s approval history.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.