analyses

Submit 2–10 prompts against the same video (batch discount)

Pricing: first prompt billed at full price; each additional prompt billed at 50% (a 50% discount — config-driven; read the live value from GET /v1/credit-pricing batch_discount_pct). Credits are reserved per-prompt at the discounted rate so the ledger shows the discount directly. Returns an analysis_batch containing all analysis DTOs plus a pricing summary. Each analysis can be polled individually via GET /v1/analyses/{id}. Pass validate_only: true for a cost-estimate dry-run (HTTP 200, no credits reserved).

post/v1/analyses/batch

Request

  • Base URL: https://api.primateintelligence.ai
  • URL: https://api.primateintelligence.ai/v1/analyses/batch
  • Auth: HTTP bearer

Request body

video_idstring required

Video resource id (prefixed ULID). Immutable.

promptsstring[] required

2–10 prompts to run against the video. First prompt is full price; each additional is billed at 50% (default — the live discount is served by GET /v1/credit-pricing as batch_discount_pct).

modelstring
metadataobject

Free-form key/value metadata. ≤16 keys, key ≤40 chars [a-zA-Z0-9_.-], value ≤500 chars.

validate_onlyboolean

Dry-run mode. When true, parses all prompts and returns an analysis_batch_preview (HTTP 200) with per-prompt cost estimates. No credits are reserved and no jobs are created.

Example request

{
  "video_id": "video_01KX12XX3BNM688AWHX7406HCF",
  "model": "Darwin-preview-1.3B"
}

Response

Dry-run preview (validate_only: true). Prompts parsed; cost estimated; no credits reserved, no jobs created.

object'analysis_batch_preview' required
video_idstring required

Video resource id (prefixed ULID). Immutable.

Example response

{
  "video_id": "video_01KX12XX3BNM688AWHX7406HCF",
  "pricing": {
    "full_price_prompts": 1,
    "discounted_prompts": 1,
    "discount_pct": 50,
    "estimated_total_seconds": 15,
    "estimated_total_cost_usd": 0.15
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.