Base URL: https://api.urlzone.in
The URLZone API lets you create and list short links programmatically. Every request is made against the base URL above and authenticated with an API key.
POST /create to shorten a URL, or GET /urls to list your links.The preferred way to authenticate is an API key, sent as a bearer token:
Authorization: Bearer uz_live_YOUR_API_KEY
API keys are created from the API Key management page in your dashboard. Each key belongs to your account and can be scoped, revoked, and re-created independently.
curl -X POST "https://api.urlzone.in/create" \
-H "Authorization: Bearer uz_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com"
}'
Shortens a URL and returns the new short link.
curl -X POST "https://api.urlzone.in/create?Url=https%3A%2F%2Fexample.com" \ -H "Authorization: Bearer uz_live_YOUR_KEY"
Url (required) — the destination URL to shorten, URL-encoded.
{
"longUrl": "https://example.com",
"shortUrl": "https://urlzone.in/u/abc123",
"code": "abc123"
}
| Status | Meaning |
|---|---|
401 | Missing or invalid API key. |
403 | The key is missing the links:write scope, or the account's current plan doesn't include API access. |
400 | The supplied URL is invalid or not allowed. |
429 | Rate limit or plan link-creation limit exceeded. |
Returns a paged list of the short links owned by your account.
curl "https://api.urlzone.in/urls?pageNumber=1&pageSize=10" \ -H "Authorization: Bearer uz_live_YOUR_KEY"
pageNumber (optional, default 1) and pageSize (optional, default 10, max 50) control pagination.
[
{
"longUrl": "https://example.com",
"shortUrl": "https://urlzone.in/u/abc123",
"code": "abc123",
"createdDate": "2026-01-15T10:22:00Z",
"isActive": true,
"expiresAt": null
}
]
Pagination metadata (total count, page size, current page, total pages, whether a next/previous
page exists) is returned in the X-Pagination response header as JSON.
| Status | Meaning |
|---|---|
401 | Missing or invalid API key. |
403 | The key is missing the links:read scope, or the account's current plan doesn't include API access. |
429 | Rate limit exceeded. |
Every endpoint uses standard HTTP status codes. The statuses relevant to authentication and rate limiting are:
| Status | What it means |
|---|---|
401 Unauthorized |
Authentication is missing or invalid — no API key was sent, or it's malformed, unknown, revoked, or expired. |
403 Forbidden |
The authenticated caller doesn't have permission — a missing scope, or the account's plan doesn't include the required entitlement. |
429 Too Many Requests |
Rate limit exceeded. Respect the Retry-After header and retry after that interval. |
API requests are rate limited to keep the platform reliable for everyone. If you send requests
too quickly, you'll receive a 429 Too Many Requests response.
When present, wait for the number of seconds given in Retry-After before retrying.
We recommend backing off and retrying rather than immediately re-sending the request.
429 gracefully rather than assuming a fixed request budget.
Existing integrations may still authenticate with a JWT plus the legacy x-uz-token
header. This method remains supported temporarily for backward compatibility
and is not recommended for new integrations.
Authorization: Bearer YOUR_JWT x-uz-token: YOUR_LEGACY_TOKEN
Use API-key authentication (above) for all new integrations.
Legacy JWT + x-uz-token support has not been removed and continues to work,
but it will not receive new capabilities.
