🔌

Developer API

Pro

Pro: 1,000 calls/mo (50/hr) · Builder: 10,000 calls/mo (500/hr)

What is the Developer API?

The AWSYS.CO REST API lets you create, read, update, and delete short links programmatically, query analytics, and manage webhooks — all using standard HTTP requests and JSON. It is designed for developers building integrations, automation scripts, or AI-agent workflows. Authentication uses a long-lived API key that you generate from your account settings.

Requirements

API access requires a Pro or Builder plan. Generate an API key from Settings → Developer → API Keys. Keep your key secret — it grants full access to your account's links and analytics. Rotate keys regularly using the key management interface.

Step-by-step: Make your first API call

  1. Go to Settings → Developer → API Keys and click Generate New Key. Give it a descriptive label and copy the key — it is shown only once.
  2. Include the key in the Authorization header of every request: Authorization: Bearer <your_api_key>.
  3. To create a short link, send a POST to https://awsys.co/api/createShort with body {"long": "<base64_url>"} where long is your destination URL encoded in Base64.
  4. The response includes shortUrl (the slug), url (the full short URL), and id (the link ID for future updates).
  5. To list your links, use GET https://awsys.co/api/links. Supports ?page=, ?limit=, and ?folder= query parameters.
  6. To update a link, send PATCH https://awsys.co/api/links/:id with a JSON body of the fields to change.
  7. To delete a link, send DELETE https://awsys.co/api/links/:id.

Configuration reference

EndpointMethodPurpose
/api/createShortPOSTCreate a single short link
/api/bulkPOSTCreate up to 100 links in one request
/api/linksGETList your links (paginated)
/api/links/:idPATCHUpdate link settings
/api/links/:idDELETEDelete a link
/api/analyticsGETQuery click analytics for a link
/api/webhooksGET / POSTList or create webhooks

Common questions

Why must the URL be Base64-encoded?

The long field uses Base64 encoding to safely transmit URLs that contain special characters (such as &, =, or Unicode) without escaping issues in JSON. Use btoa(url) in a browser/Node.js or base64.b64encode(url.encode()).decode() in Python.

What happens when I exceed my monthly API call limit?

Requests beyond your monthly quota return HTTP 429 with an error body explaining the limit. Your links continue to redirect normally — only API management calls are gated. Quota resets at the start of each billing cycle.

Can I create multiple API keys?

Yes. Pro accounts can have up to 3 API keys; Builder accounts can have up to 10. Using separate keys per service (e.g., one for your automation script, one for your CI pipeline) lets you rotate or revoke individual keys without disrupting other integrations.

Where is the full API reference?

The complete endpoint reference with request/response schemas, code examples, and error codes is in the API Docs.

Related articles