Skip to main content

FAQ

What are doubloons?

The PiratePress currency: 1 ⛁ = 1 ₽. Prices match the bot: a base video is 100 ⛁ plus the extras you pick (placement, AI visuals, song, etc.). What was actually charged is in the cost field of the creation response. Top-ups happen in the bot: /balance (card/SBP via Platega or Telegram Stars).

What are the limits?

Per key: 10 active tasks (queued + running) and 30 POST per minute; beyond that — 429 with Retry-After (see Error codes). API tasks run in a separate queue with lower priority than bot users: the ETA in eta_seconds is honest, but it can drift at peak hours — design for polling/webhooks, not a fixed duration.

Does the trial work through the API?

Yes. Newcomer free videos (the starter pack from /start in the bot) are applied automatically until exhausted — including orders placed through the API. Trial videos carry the mandatory piratepress.fun (AI) watermark, same as in the bot. Once the trial is spent, orders cost doubloons; an empty balance means 402 insufficient_funds.

What is director mode?

director_mode: true in POST /videos — generation pauses after the script: the order moves to awaiting_review (a video.awaiting_review webhook arrives). Your decision goes to POST /videos/{id}/review:

  • {"action": "approve"} — script is fine, keep generating;
  • {"action": "edit", "text": "…"} — generate from your edited text;
  • {"action": "regen", "note": "…"} — rewrite the script with a wish.

A 409 not_awaiting_review response means the order isn't waiting for a review right now.

Where is the full reference?

Interactive (Scalar): https://api.piratepress.fun/public/v1/docs. Raw schema: https://api.piratepress.fun/public/v1/openapi.json — SDK types are generated from it. The /public/v1 contract is frozen: changes are additive only; breaking ones go to /public/v2.

My key leaked — what now?

/apikey in the bot → revoke. A revoked key starts getting 401 immediately. Note: /stop in the bot deletes the whole account — the key dies with it, and orders and files are erased for good.

How long do results live?

Order files (mp4, covers, posting pack) are stored for 30 days, then deleted — download right away. The signed result_url lives 7 days: if it expired, just re-request GET /videos/{id} for a fresh one.

Are there SDKs?

Python (piratepress, PyPI) and JS (@piratepress/sdk, npm): thin clients over this very contract — retries, Retry-After, automatic Idempotency-Key, and a webhook-signature helper out of the box. If you write your own client, treat the OpenAPI schema as the source of truth.

Still curious — @piratepress_support.