abre APIabre.ai ↗
Create abre.ai short links via API. POST a destination URL and receive the token, short_url, and record ID in a single call.
What is the abre API?
The abre.ai API exposes 1 endpoint — short_url — that turns any absolute destination URL into an abre.ai short link. A single POST call returns 4 fields: the numeric record id, the stored destination url, the path token, and the ready-to-use short_url. Every call generates a distinct token, so each invocation produces a unique, independent short link.
curl -X POST 'https://api.parse.bot/scraper/e8d0dee6-2471-4e2b-b3fb-abc9b2f128f7/short_url' \
-H 'X-API-Key: $PARSE_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"url": "https://www.wikipedia.org/wiki/Brasil"
}'Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace abre-ai-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: abre.ai URL Shortener — create a short link and inspect it."""
from parse_apis.abre_ai_api import AbreAi, InputFormatInvalid
client = AbreAi()
# Shorten a URL and inspect the returned short link object.
try:
link = client.short_links.create(url="https://www.wikipedia.org/wiki/Brasil")
except InputFormatInvalid as e:
print("Invalid URL:", e.message)
else:
print("Short URL:", link.short_url)
print("Token:", link.token)
print("Destination:", link.url)
print("Record ID:", link.id)
print("exercised: short_links.create")
Creates a new abre.ai short link for the given destination URL and returns it. Every call creates a new short link (a repeated call with the same destination yields a different token), so this is a write operation and should not be replayed idly. Two upstream round trips per call. The returned object carries the site's record id, the full short URL, its token (the path segment) and the destination URL as stored. A destination that is not an absolute http(s) URL is rejected before any request is made; a destination the site itself refuses is reported as an input error.
| Param | Type | Description |
|---|---|---|
| urlrequired | string | Absolute destination URL to shorten, including the http:// or https:// scheme. |
{
"type": "object",
"fields": {
"id": "string; the site's numeric record id of the created short link",
"url": "string; the destination URL as stored by the site",
"token": "string; the short link's path segment",
"short_url": "string; the full shortened URL"
},
"sample": {
"data": {
"id": "6599429",
"url": "https://www.wikipedia.org/wiki/Brasil",
"token": "sFD2",
"short_url": "https://abre.ai/sFD2"
},
"status": "success"
}
}About the abre API
What the API returns
The short_url endpoint accepts one required parameter — url — which must be an absolute URL including its scheme (http:// or https://). On success, the response contains four fields: id (the numeric record identifier assigned by abre.ai), url (the destination URL exactly as stored), token (the path segment appended to the abre.ai domain), and short_url (the complete, shareable shortened URL).
Write-once behavior
Every call to short_url creates a new record on abre.ai, regardless of whether the same destination URL has been shortened before. Submitting the same destination URL twice produces two different tokens and two different short links. There is no deduplication or lookup-by-destination in the current API surface. Callers should store the returned short_url and token locally if they need to reuse a link rather than calling the endpoint again.
Intended usage patterns
Because short_url is a write operation, it is suited for workflows that generate short links at the point of need: publishing pipelines that shorten article URLs before distribution, bulk link generation for campaigns, or application features that expose shareable links to end users. The returned id can be used as a foreign key in your own database to associate the short link record with your internal data.
The abre API is a managed, monitored endpoint for abre.ai — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when abre.ai changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official abre.ai API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Automatically shorten article URLs before posting to social channels, using the returned
short_url - Generate unique trackable links per campaign by calling
short_urlonce per variant and storing thetoken - Build a shareable-link feature in a web app by calling
short_urlat click time and returning theshort_urlto the user - Create shortened redirect links in bulk for email newsletters by iterating destination URLs through the
short_urlendpoint - Store the numeric
idalongside internal records to maintain a mapping between your content and its abre.ai short link - Produce short links for QR code generation by feeding the returned
short_urlinto a QR encoding step
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does abre.ai have an official developer API?+
What exactly does the short_url endpoint return?+
id (abre.ai's numeric record identifier for the link), url (the destination URL as stored), token (the short link's path segment), and short_url (the full shortened URL ready for use). No click analytics or expiry data are included in the response.Will calling the endpoint twice with the same destination URL return the same short link?+
short_url or token from the first call locally rather than calling the endpoint again.Can I look up or list existing short links I've already created?+
id, token, and short_url for the newly created record. You can fork this API on Parse and revise it to add a lookup or listing endpoint.Does the API return click statistics or analytics for a short link?+
id, token, short_url, url) but no engagement or click-count data. You can fork this API on Parse and revise it to add an analytics endpoint if abre.ai exposes that data.