Skip to main content
Robin compresses content for LLM pipelines and storage. Send text or audio, pick a preset (or compose your own operation chain), get back a smaller output.

What it does

  • Text: whitespace/punctuation/unicode cleanup, and conversion of large JSON blocks to TOON tabular notation. Everything returns a job; small inline inputs come back already completed.
  • Audio: silence trimming, loudness normalization, dynamic range compression, speedup, and re-encoding to Opus (default) or MP3. Always asynchronous.

How it works

  1. Authenticate every request with an API key: Authorization: Bearer sk_live_...
  2. Upload files via a presigned URL (POST /v1/upload), or send text inline.
  3. Create a job with POST /v1/text or POST /v1/audio, using a preset or custom operations.
  4. Get the result from the response itself, via GET /v1/jobs/:id?wait=25 (long-poll), or through a signed webhook.
All endpoints live under /v1 and return a consistent envelope:

Base URL

Next steps

Quickstart

Upload and compress an audio file end to end with curl.

Authentication

Create an API key and authenticate requests.

Jobs

Job lifecycle, polling, and results.

Webhooks

Get notified when jobs complete, with HMAC-signed payloads.