Getting started: one generation and its idempotency key
Choose titles, rewrite, translate or summarize, paste up to 12000 characters, set target language and tone, then run. The browser creates a fresh Idempotency-Key and sends {task,input,options,templateId?} to the same-origin POST /api/v1/generations.
The server validates the whitelist and limits, atomically registers idempotency metadata, and only then calls the provider. Concurrent clicks with one key cause exactly one provider call; the same key with different content returns 409. In the success envelope, requestId differs from generationId.
Copy or download the result as TXT. Titles are displayed as a newline-separated string[]; other tasks display plain text. Cancellation means this site stopped waiting: a late vendor result is discarded, never displayed, and mock fixture text is never passed off as AI output.