Skip to main content
POST
/
v1
/
workflows
/
reviews
/
{review_id}
/
approve
from retab import Retab

client = Retab()

result = client.workflows.reviews.approve(
    "rev_D4J7WZBRV4H7C2SKQJ4NP6W2EY",
    version_id="rvr_PFBGO3R6T3PG5O37U4Y3NDXWAM",
)
print(result.review.decision.verdict)
{
  "submission_status": "accepted",
  "resume_status": "resumed",
  "resume_error": null,
  "review": {
    "id": "rev_D4J7WZBRV4H7C2SKQJ4NP6W2EY",
    "workflow_id": "wf_1",
    "workflow_version_id": "wfv_1",
    "run_id": "run_abc123",
    "block_id": "block_extract",
    "step_id": "run_abc123_block_extract",
    "block_type": "extract",
    "triggered_by": { "kind": "always" },
    "created_at": "2026-05-13T08:14:02.341Z",
    "decision": {
      "verdict": "approved",
      "version_id": "rvr_PFBGO3R6T3PG5O37U4Y3NDXWAM",
      "author": { "kind": "human", "id": "user_42", "display_name": "Dana Rivera" },
      "reason": null,
      "created_at": "2026-05-13T09:10:00.000Z"
    }
  }
}
Approve one exact review version. The selected snapshot flows downstream and the workflow resumes.
from retab import Retab

client = Retab()

result = client.workflows.reviews.approve(
    "rev_D4J7WZBRV4H7C2SKQJ4NP6W2EY",
    version_id="rvr_PFBGO3R6T3PG5O37U4Y3NDXWAM",
)
print(result.review.decision.verdict)
{
  "submission_status": "accepted",
  "resume_status": "resumed",
  "resume_error": null,
  "review": {
    "id": "rev_D4J7WZBRV4H7C2SKQJ4NP6W2EY",
    "workflow_id": "wf_1",
    "workflow_version_id": "wfv_1",
    "run_id": "run_abc123",
    "block_id": "block_extract",
    "step_id": "run_abc123_block_extract",
    "block_type": "extract",
    "triggered_by": { "kind": "always" },
    "created_at": "2026-05-13T08:14:02.341Z",
    "decision": {
      "verdict": "approved",
      "version_id": "rvr_PFBGO3R6T3PG5O37U4Y3NDXWAM",
      "author": { "kind": "human", "id": "user_42", "display_name": "Dana Rivera" },
      "reason": null,
      "created_at": "2026-05-13T09:10:00.000Z"
    }
  }
}

Authorizations

Api-Key
string
header
required

Path Parameters

review_id
string
required

Body

application/json

Approve a specific version of a review.

version_id
string
required

Exact content-addressed key of the version to approve.

Pattern: ^rvr_[A-Z2-7]{26}$

Response

Successful Response

Response to a review approve or reject request.

Carries resume_status so callers can see whether the run resumed successfully.

review
WorkflowReview · object
required

One review and its current decision.

submission_status
enum<string>
default:accepted
Available options:
accepted,
already_applied,
conflict
resume_status
enum<string>
default:resumed
Available options:
resumed,
pending,
failed,
skipped
resume_error
string | null