Short-link expand API
Installed-app short URL → in-app path without consuming Match.
LIVE SPECIMEN
Universal & Deferred Link SimulatorURL
https://taqlyn.com/shop/checkout?cartId=cart_9841&promo=WELCOME20&aff=partner_8POST /v1/links/expand
Public authentication (clientId + publicKeyId). Used when the app is already installed and a short code must become an in-app route. Does not consume deferred Match clicks.
#Request
{
"clientId": "app_test_…",
"publicKeyId": "pk_test_…",
"url": "https://go.example.com/Ab12Cd",
"env": "sandbox"
}Or pass host + code instead of url.
| Field | Required | Description |
|---|---|---|
clientId | Yes | Public client ID |
publicKeyId | Yes | Public key ID |
url | One of | Absolute short URL |
host + code | One of | Short host and code |
env | No | sandbox / production (inferred from clientId if omitted) |
#Response (200 OK)
{
"linkId": "lnk_…",
"code": "Ab12Cd",
"host": "go.example.com",
"destinationPath": "/offer",
"params": { "sku": "1" },
"url": "https://go.example.com/Ab12Cd",
"linkResolveMode": "await",
"appResolveMode": "optimistic",
"appExpandTimeoutMs": 1500
}Unknown short codes → 404. Cross-app codes → 404 (ownership check).
#Related
- Short-link expand concept
- Deferred resolve (install gap — different endpoint)