Everything a fake API
needs to feel real

SuperBins is the companion tool you reach for when the real backend is not ready — for tests, demos, interviews, and prototypes. Here is what it does.

GET /api/b/:id

Instant endpoints

Save a bin and it answers immediately at its own URL, served as real JSON over HTTPS. Point a client at it and it responds.

  • A unique, permanent URL per bin
  • Served as application/json over HTTPS
  • No deploy, no cold start, no config
https://superbins.io/api/b/d42f3972-6acb-496a-a8d4-cda724dac95e
{
  "message": "Hello World",
  "timestamp": "2026-08-01T09:15:32Z",
  "user": {
    "name": "Sarah Johnson",
    "email": "sarah.johnson@example.com"
  }
}

{{ random.* }}

Data that changes every request

Drop a token into your JSON and SuperBins fills it in fresh on every call. Lists stop looking like the same row copied five times, and your UI meets names long enough to break the layout.

Twelve tokens, usable anywhere in the body:

random.namerandom.firstNamerandom.lastNamerandom.emailrandom.uuidrandom.numberrandom.daterandom.phonerandom.booleanrandom.colorrandom.sentencerandom.paragraph

random.number takes a range, as in {{random.number(1,10)}}.

YOU WRITE

{
  "user": "{{random.name}}",
  "email": "{{random.email}}",
  "id": "{{random.uuid}}",
  "score": "{{random.number(0,100)}}"
}

CALLERS GET

{
  "user": "Sarah Johnson",
  "email": "sarah.johnson@example.com",
  "id": "a7f3e9c1-4b2d-4e6f-9a8c-1d5e3f7b9c2a",
  "score": 87
}

IF request.headers.authorization

Different answers for different requests

Match on the method, a header, or a query parameter, then decide what comes back. It is how you demo the signed-out state, the admin view, and the rate-limited error from one endpoint.

  • Conditions on method, headers, and query params
  • Change the status code, the delay, or the whole body
  • Built in a visual editor, not in code

WHEN

THEN

returns401 Unauthorized

POST /api/v1/bins

Drive it from your own tooling

Everything you can do in the dashboard is available over a REST API with a master key, so a test suite or an n8n workflow can create bins, update them, and tear them down.

  • Create, read, update, and delete bins
  • Master key authentication
  • Fits automation tools like n8n
create-bin.sh
curl -X POST "https://superbins.io/api/v1/bins" \
  -H "Authorization: Bearer mk_live_xxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Automated Bin",
    "data": { "status": "success" },
    "isPublic": false
  }'

# 201 Created
{
  "success": true,
  "bin": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "url": "https://superbins.io/api/b/550e8400..."
  }
}

And the rest of it

Smaller things you will end up using constantly.

POST /collections

Collections

Group related bins by project. A bin can sit in more than one collection, so a shared auth mock does not need duplicating.

Authorization: Bearer

Public and private bins

Leave a bin open for demos and shared links, or require an access token per bin when the data should not be public.

PATCH /bins/:id

Edits go live immediately

Change the body in the web editor and the endpoint serves the new response on the next request. No deploy step.

delay: 1200ms

Response modifiers

Three actions cover most of it: set the response time, set the status code, or replace the entire response body.

On the roadmap

Not built yet. Listed here so you know what is coming rather than what is shipping.

Request logging

A timestamped record of every call to a bin, with the full request and response available for inspection and search.

JSON file upload

Drag a .json file in to create a bin from it, with validation on the way in and bulk creation from an array.

Try it on your next mock

Free tier available. No credit card required.