Add short links to your own product

Your backend creates links on your domain through the API and hears about changes through signed webhooks. The redirects, certificates and checks on where links point are run by us.

  • The API is on every plan, the free one included
  • Up to 10,000 links in one request
  • Additions never break v1; a breaking change gets a new version
The Developers page of a workspace, listing API keys by name

A plain REST API

Create, list, read, update and delete links with a bearer key. Set an alias, an expiry, a password, a folder and one of your domains in the same request. Links reference.

Signed webhooks

An HTTPS POST when a link is created, edited or deleted, a domain is verified or a member joins. Signed with HMAC-SHA256 and retried seven times over about 21 hours. Webhooks reference.

Your domain on every link

Verify a domain such as go.yourproduct.com once, then name it when you create a link. The certificate is issued and renewed for you.

Limits by plan

Requests are counted per key over 60 seconds. There is no monthly request cap.

Plan Requests / minute API keys Webhook endpoints Your domains Bulk create Monthly
Free 30 1 0 0 No Free
Pro 120 3 0 2 Yes $12
Team 600 10 10 10 Yes $29
Business 3,000 25 25 unlimited Yes $99

Each plan also limits how many links you create in a month. Those numbers are on the pricing page, and rate limits explains the headers and the 429 response.

What it doesn't do

  • No sub-accounts for your customers. A key works in one workspace. To keep customers' links apart, file them in a folder per customer, which the API can create and list on the paid plans.
  • Targeting rules and A/B rotation are set in the app, not through the API.
  • The API returns a click count per link. Breakdowns by country, referrer and device are in the app and in CSV exports.
  • No SDK packages. The docs have worked examples in cURL, PHP, Node.js, Python and C#.

Frequently asked questions

Can we build against it before paying?
Yes. The free plan has the same API and the same kind of key as the paid plans, with no sandbox and no time limit. A free key creates plain links. Aliases, expiry, passwords, your own domains and bulk creation need Pro or higher, and webhooks need Team.
How do we know a webhook came from you?
Each endpoint has its own secret. Every request carries a signature made from the send time and the raw body, which you recompute and compare. The delivery log keeps every attempt for 30 days and lets you resend one.
Will a change on your side break our integration?
New endpoints and new fields arrive in v1 without a version change, so write clients that ignore fields they don't know. Anything that could break a working integration gets a new version, and v1 keeps answering. Changelog.
What happens to our users' links if Urlicer closes?
You would get at least 180 days' notice, with export open on every plan. Links on your own domain are yours to point elsewhere with a DNS change, and we would publish a small redirect server under the MIT licence that loads the export. What happens to your links.
Who checks where the links point?
We do. Every destination is checked before a link goes live and re-checked afterwards, and a link whose destination turns harmful is stopped. That protects your domain as well as ours.
Is every call recorded?
Changes made with a key are recorded under that key's name, and each link shows the key that created it. Reading the audit log is part of the Business plan.

Make the first link from your code

Create a key on the free plan and send one request.

Start free Read the API docs