Skip to main content

Authentication

All VRT endpoints take an API key, sent as X-API-Key or Authorization: Bearer <key>. :project is your project slug. Creating a run creates the project on first use; every other route returns 404 for a slug that does not exist in your organization. Requests count against the apikey rate limit bucket. Screens per run are capped by plan: Free 5, Pro 25, Business and Enterprise unlimited.

Create a run

Two-phase friendly: post without screens to open a running run, then finish it with PATCH. Post with screens to record a complete run in one call. Request bodies are capped at 100 MB.

Body (multipart/form-data)

Each entry in screens:

Response

Errors

Complete a run

Uploads the final screens, captures, and diffs for a run opened in running state. Same multipart fields as create, minus branch, commit_sha, and trigger; screens is required. Response — the same object as create. Errors

Append logs

Only works while the run is running — otherwise 409.

List runs

Query parameters

Response


Get run details

Response

review_status is accepted, flagged, or null when the screen has not been reviewed. pending_review_count counts failed and new screens still awaiting a decision — the number that blocks approval.

Review a run

Reviewing is the CI closer: accept the screens whose changes are intended, then approve the run to promote those captures to baselines.
Marks one screen accepted, flagged, or back to unreviewed. Each returns the screen object shown above.

Approve

Optional body:
With accept_unreviewed, every still-unreviewed failed or new screen is accepted first. Approving promotes each accepted screen’s capture to the baseline for the run’s branch; flagged screens keep their existing baseline. The run’s status becomes approved. Response200 OK — the run detail object.

Reject

Sets the run to rejected. Screens and baselines are untouched. Response200 OK — the run detail object.

Download images

Returns PNG image data (Content-Type: image/png), or 404 when the run has no image for that screen.

See also