Fictura
Links API
POST/v1/links

Create links

Mint tracking links programmatically — one at a time, or five hundred in a transaction.

The Links API lives at /v1 and authenticates with a Links API keyAuthorization: Bearer fk_live_…, minted on Dashboard → Links → API and shown exactly once. It's a separate surface from /api/v1; the gk_ key doesn't work here.

cURL
curl -X POST https://api.fictura.co/v1/links \
  -H "Authorization: Bearer fk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"name": "Spring drop", "destination_url": "https://apps.apple.com/app/id123", "slug": "springdrop"}'
201 — created
{
  "ok": true,
  "link": {
    "slug": "springdrop",
    "name": "Spring drop",
    "url": "https://api.fictura.co/l/springdrop",
    "destination_url": "https://apps.apple.com/app/id123"
  }
}

name and destination_url are the two required fields. slug is optional (one is generated) and must be 3–50 alphanumeric characters — no hyphens; a taken slug answers 409 slug_taken, a malformed body 400 invalid_body with an issues list. In the response, url is the short redirect (/l/<slug>) — the thing you put on the poster — and destination_url is where it points.

Bulk

cURL
curl -X POST https://api.fictura.co/v1/links/bulk \
  -H "Authorization: Bearer fk_live_..." \
  -H "Content-Type: application/json" \
  -d '{"links": [
    {"name": "Creator A", "destination_url": "https://apps.apple.com/app/id123"},
    {"name": "Creator B", "destination_url": "https://apps.apple.com/app/id123"}
  ]}'

POST /v1/links/bulk takes 1–500 links and runs as one transaction — all created or none, answering 201 {"ok": true, "created": n, "links": […]}. Beyond 500, split the batch.

On this page