API Reference

v1

The MakerManifest API lets you create and manage short links programmatically. All requests require a Bearer API key. Premium plan or above required.

Base URL

https://makermanifest.co/api/v1

All endpoints are prefixed with this base URL. All responses are JSON.

Authentication

Every request must include your API key as a Bearer token in the Authorization header. Keys are prefixed with mm_.

Authorization: Bearer mm_your_key_here

Generate and manage keys at Dashboard → API Access. Premium accounts can have 1 active key; Enterprise accounts can have up to 10. Keys are shown exactly once at creation — store them securely.

Rate Limits

Limits are applied per API key on a sliding 60-second window.

PlanLimit
Premium60 requests / minute
Enterprise300 requests / minute

When a limit is exceeded the API returns 429 Too Many Requests with a Retry-After header (seconds until the window resets) and X-RateLimit-Limit / X-RateLimit-Remaining headers on every response.

Errors

All errors return a JSON body with an error string.

StatusMeaning
400Bad request — invalid URL, missing required fields, or invalid code format
401Unauthorized — missing or invalid API key
403Forbidden — your plan does not include this feature (e.g. custom codes require Basic+)
404Not found — the short link code does not exist or belongs to another account
409Conflict — the requested vanity code is already taken or reserved
429Rate limit exceeded — slow down and retry after the Retry-After interval
500Server error — unexpected failure; contact support if it persists
{ "error": "Invalid URL. Must start with http:// or https://." }

Endpoints

GET/api/v1/me

Returns your account info — useful for verifying authentication and checking your plan.

Response

{
  "id": "cuid_abc123",
  "username": "TheNewJankyWorkshop",
  "displayName": "The New Janky Workshop",
  "email": "[email protected]",
  "plan": "Premium",
  "preferredShortDomain": "mkr.ms",
  "createdAt": "2026-01-15T12:00:00.000Z"
}
POST/api/v1/links

Create a new short link for any http or https URL. Returns the created link object.

Request body

ParameterTypeRequiredDescription
urlstringYesThe destination URL (must start with http:// or https://)
codestringNoOptional vanity code (2–50 chars, letters/numbers/hyphens, no leading/trailing hyphens, no consecutive hyphens). Requires Basic plan or above. Omit to auto-generate.

Example request

POST /api/v1/links
Content-Type: application/json

{ "url": "https://amazon.com/dp/B0EXAMPLE", "code": "dewalt-drill" }

Response — 201 Created

{
  "id": "cuid_abc123",
  "code": "dewalt-drill",
  "url": "https://amazon.com/dp/B0EXAMPLE",
  "shortUrl": "https://mkr.ms/dewalt-drill",
  "clickCount": 0,
  "createdAt": "2026-05-20T10:00:00.000Z"
}
Note: URLs are canonicalized before storage (tracking params stripped, Amazon URLs normalized). Your affiliate rules are applied at redirect time — not at creation time — so changing your affiliate programs affects all links immediately.