postreef
View as Markdown

API pricing

A run's price is additive: a small base fee, a download charge per artifact fetched, and, when you pass a schema, an AI rate per second per modality. Model-independent. 1 credit = $0.0001. Your first top-up earns 1,000 bonus credits.

Base fee

Every fresh pipeline run costs 50 credits ($0.0050). It covers the probe, metadata, thumbnail and description, which every run includes. Cached results (an identical recent extraction) are free.

Download rates

Artifact Rate
transcript $0.001 flat (10 credits)
comments $0.002 flat (20 credits)
audio $0.00002/second of video
video $0.00005/second of video

Charged per artifact you request, on download-only runs (parts) and on AI runs alike (an AI run downloads whatever its inputs need). Artifacts that turn out unavailable (a video with no subtitles, hidden comments) are refunded automatically on completion.

AI rates

Modality USD / second Credits / second Covers
text $0.00005 0.5 transcript and/or comments (charged once, never doubled)
audio $0.0001 1 the audio track (not billed when video is also selected)
video $0.0002 2 the full video (thumbnail analysis rides along free)

total = base + Σ(download rates) + Σ(selected modality rate × video seconds). Download-only runs (no schema / schemaId) skip the AI component entirely; probes are free.

Webpage runs are flat

A URL with no video (an article, any ordinary page) takes the article path and the per-second formula doesn't apply: the run costs the base fee plus a flat 50 credits for the AI pass when a schema is set — 100 credits total, 50 without a schema. No download rates, no duration component. The probe prices this automatically when the URL resolves to a page.

Photo posts and carousels are flat, per-slide

An Instagram photo post or a TikTok slideshow has no video stream — the probe's durationSec on these is the background music track, not a video length, so it never drives the price. The run costs the base fee, plus a flat 50 credits for reading the text and 10 credits per slide when a schema is set (a 6-slide post: 160 credits total). comments still bills at its normal flat rate when selected; transcript, audio and video aren't offered on these posts. The probe reports imageCount so you can see the slide count before submitting.

The probe is the canonical quote

POST /v1/probe returns the exact price the matching submit will debit — quote it with the body you intend to submit. The probe prices whatever that body describes: a schema / schemaId (any object; the probe never validates it, the AI rates don't depend on its contents) means an AI extraction over inputs; no schema means a download-only run over parts. inputs without a schema is rejected by both endpoints rather than quietly priced as something else, and the response echoes which of the two it quoted as price.mode.

POST /v1/probe
{ "url": "https://...", "schemaId": "postreef.predefined.recipe.v1", "inputs": ["transcript", "comments", "video"] }

200
{
  "durationSec": 212,
  "price": {
    "mode": "ai",
    "credits": 716,
    "usd": 0.0716,
    "baseUsd": 0.0050,
    "downloadUsd": 0.0136,
    "downloadBreakdown": { "transcript": 0.0010, "comments": 0.0020, "video": 0.0106 },
    "breakdown": { "text": 0.0106, "audio": 0.0000, "video": 0.0424 }
  }
}

Worked example

A 3m32s video (212s) with inputs: ["transcript", "comments", "video"]:

  • base fee: $0.0050
  • downloads (transcript + comments flat, video per-second): $0.0136
  • AI text (transcript + comments, charged once): $0.00005 × 212s = $0.0106
  • AI video: $0.0002 × 212s = $0.0424
  • audio: $0. The video already carries the audio track, so it isn't billed separately.
  • Total: $0.0716 = 716 credits.

Debits, refunds and caching

  • Credits are debited up-front at submit, atomically with creating the extraction.
  • Failed extractions are refunded in full, automatically.
  • When the platform hides the video duration (durationSec: null on the probe), the worst-case 300s is debited and the difference is refunded once the real duration is known. You never pay more than the debit, even when the content turns out longer. Photo posts and carousels don't go through this path at all — they're priced flat and per-slide (see above), so their reported duration (a background track) is never billed against.
  • Videos longer than 60 minutes are rejected at submit, before any debit.
  • If an identical extraction (same URL, schema and inputs) completed within the last 30 days, the result is reused and nothing is charged (creditsDebited: 0, cached: true).

First top-up bonus

Your first top-up, whatever the amount, comes with 1,000 bonus credits on top of what you buy, once per account. At the text rate that's about 33 extra minutes of transcript extraction. Top up from the billing page. See also the general pricing guide.