Reference

REST API

No MCP? Every one of the 49 tools is reachable over plain HTTP at https://api.vidmee.ai. One envelope covers the whole surface.

Authentication

Bearer token on every request. Create a key in the dashboard.

curl https://api.vidmee.ai/v1/status \
  -H "Authorization: Bearer $VIDMEE_API_KEY"

The job envelope

Everything is POST /v1/jobs with an operation and its input.

curl https://api.vidmee.ai/v1/jobs \
  -H "Authorization: Bearer $VIDMEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "operation": "inspect",
    "input": { "source": "https://staging.acme.app/checkout",
               "goal": "the Pay button is visible and the form has no errors" }
  }' 

Operation names and aliases

operation accepts the canonical tool name or its dotted namespace alias, they are equal:

"operation": "inspect"        == "qa.inspect"
"operation": "search_visual_memory" == "memory.search"
"operation": "generate_visual"      == "generate.visual" 

Full map, scopes, and per-op JSON-Schema at GET /v1/operations and GET /v1/operations/{name}.

Long-running jobs

Calls block up to ~30s. Longer ops (sweep_site, compose_video, generate_until_pass, storyboard_video) return a poll_url and events_url. Poll or stream, or fetch by id with get_result. Over MCP this is transparent, the call just returns the final result.

Spend control: quotes, holds, per-agent budgets

Money is a first-class API surface, built for agents that hold a budget:

Quote before you spend. estimate prices any specific job for free. Generation pre-authorizes the estimate as a hold and settles on actual provider cost; failed generations refund the hold. Every tool description states its own price; get_wallet shows live balances.

Per-agent hard caps. Tag any job with an agent_id in its input, then cap that agent with POST /v1/wallet/budgets (admin-scoped key): daily or monthly caps on analysis credits and generation spend. A capped agent’s over-budget call fails with a structured error instead of spending. GET /v1/wallet/budgets lists caps and current-period spend.

// give the nightly QA agent a hard daily ceiling
curl -X POST https://api.vidmee.ai/v1/wallet/budgets \
  -H "Authorization: Bearer $VIDMEE_ADMIN_KEY" -H "content-type: application/json" \
  -d '{"agent_id": "qa-nightly", "period": "day", "analysis_cap_credits": 200, "hard": true}'

// every job that agent runs carries its id
{"operation": "inspect", "input": {"source": "https://...", "agent_id": "qa-nightly"}}

Signed evidence packs

Any completed job can produce an offline-verifiable receipt: POST /v1/evidence/{job_id} returns a canonical manifest (result digest + the stored SHA-256 of every referenced screenshot) signed with VidMee’s Ed25519 key (GET /v1/evidence/key). Verify the signature, the manifest bytes, and the downloaded artifact’s hash without contacting VidMee — machine-consumable proof of what the agent’s work looked like, made for CI logs, tickets and audit trails. Reference verifier: vidmee.ai/verify-evidence.pypython3 verify-evidence.py pack.json screenshot.png.

Idempotency

Pass a stable client_ref (e.g. "{run_id}:{step}") so a retry returns the SAME job, never a duplicate charge.

Result envelope

Hero tools always return a verdict; specialists return the fields they produce.

{
  "verdict": "issues_found",         // clean | issues_found | regression_detected | pass | fail
  "safe_to_ship": false,
  "findings": [ { "severity": "p1", "title": "...", "evidence": "..." } ],
  "asset_id": "img_...",             // signed URLs, private, short-lived
  "next_actions": [ "..." ]
}

Errors

{ "error": { "code": "provider_rate_limited",
            "message": "...", "retryable": true } }

Retry on retryable: true. The full retryable-code list is on each op at GET /v1/operations/{name}.

Discovery endpoints (no auth)

EndpointWhat
GET /llms.txtThe quickstart an LLM reads to self-onboard.
GET /openapi.jsonFull OpenAPI schema.
GET /v1/operationsEvery operation: scope, layer, summary, input JSON-Schema.
GET /v1/operations/{name}One operation's full contract.
GET /v1/integrationsPaste-ready harness configs.
GET /v1/providersGeneration providers and what each is best for.

Get your API key   Tool reference