Home/ Use cases/ Developers

One POST, one short link.

slsh.me offers a JSON API for generating branded short links programmatically. Token auth, custom domain via CNAME, idempotent slugs, OG control — no SDK required.

terminal

$ curl -X POST https://slsh.me/api/links \

-H "Authorization: Bearer sk_live_..." \

-d '{"url": "https://app.yourco.com/invite/x7f2k"}'

HTTP/1.1 201 Created

{

"short_url": "https://slsh.me/inv-x7f",

"slug": "inv-x7f",

"clicks": 0,

"created_at": "2026-04-16T09:14:22Z"

}

Why developers use slsh.me

An API that stays out of the way.

Your app generates invite links, share URLs, receipt pages. They’re all ugly and long. slsh.me turns them into branded short links via a single REST endpoint — no SDK to vendor, no opinionated client to wrap, just JSON in and JSON out.

Token auth, nothing fancy

Personal access tokens in the dashboard. Pass Authorization: Bearer … and you’re done. No OAuth dance for server-side use.

Custom slugs & idempotency

Pass your own slug for meaningful codes (inv-x7f). Re-POSTing the same payload with the same slug returns the same link, not a duplicate.

Branded via CNAME

Point links.yourco.com at slsh.me. Every link the API mints can come out on your domain, not ours.

OG control from the payload

Set og_image, og_title, og_description in the create call. Useful when the destination has no OG tags of its own.

From zero to your first link

Three requests, in order.

Mint a token

Sign up, open Settings → API, generate a personal access token. Store it server-side.

POST a long URL

POST /api/links with {"url": "..."} and Bearer auth. Get back the short URL and slug.

Ship it — or fetch its clicks

Use the short URL anywhere. GET /api/links/:slug/clicks returns the same click stream as the dashboard.

Questions

The honest answers.

How does the slsh.me API work?
slsh.me exposes a REST API. You authenticate with a personal access token (Bearer header), POST a JSON body with the long URL, and get back a JSON response containing the short URL, the generated slug, and metadata. Everything is JSON in and JSON out — no SDK required, curl works.
Can I use my own domain for API-generated short links?
Yes. Add a custom domain in the dashboard, point a CNAME at slsh.me, and pass the domain in the API request. Every link created on that account can come out as links.yourco.com/abc instead of slsh.me/abc — same API, same response shape.
Can I set the slug myself, or is it always random?
Both. Omit the slug and the API picks a short random one. Pass a slug explicitly and the API uses it — useful for invite codes, receipt IDs, or any case where the slug is meaningful. If a slug is taken, the call returns a 409 so you can retry or pick another.
Are there rate limits or quotas?
Yes — limits scale with plan. Free Slash is generous for prototyping; Big Slash and above lift the per-minute creation cap. The X-RateLimit-Remaining and X-RateLimit-Reset headers come back on every response so you can back off cleanly. Hard quotas are documented per plan on the pricing page.
Does slsh.me give my links Open Graph previews via the API?
Yes. Pass og_image, og_title, og_description in the create payload and slsh.me serves them on the short URL’s preview crawl. Skip them and slsh.me falls back to whatever the destination URL already declares. Useful when the destination has no OG tags at all.

Ship your first link.

Free forever. Token auth. One POST and you’re done.

Get an API key