API
API Link
Vše z kabinetu, z vašeho kódu. Auth tokenem. Odpovědi v JSON.
Auth
V kabinetu vytvořte token. Posílejte ho v každém požadavku. Tajemství ukážeme jednou.
Authorization: Bearer lnk_…your_token…
X-Api-Key: lnk_…your_token…
Základní URL: https://link.integrono.com/api/v1
Každý JSON začíná ok. Chyby používají HTTP stav plus klíč error.
{"ok":true,"data":{…}}
{"ok":false,"error":"validation","fields":{…}}
Metody
GET /api/v1
Catalog
Public list of every method. No token needed.
curl -s https://link.integrono.com/api/v1 \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
GET /api/v1/me
Account
Who the token belongs to, plus link and domain counts.
curl -s https://link.integrono.com/api/v1/me \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
GET /api/v1/folders
List folders
Folders for the token owner, in drag order.
curl -s https://link.integrono.com/api/v1/folders \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
POST /api/v1/folders
Create a folder
JSON: name.
curl -s https://link.integrono.com/api/v1/folders \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X POST \
-H "Content-Type: application/json" \
-d '{ "name": "APK" }'
Příklad těla
{ "name": "APK" }
POST /api/v1/folders/reorder
Reorder folders
JSON: ids[] in the new order.
curl -s https://link.integrono.com/api/v1/folders/reorder \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X POST \
-H "Content-Type: application/json" \
-d '{ "ids": [3, 1, 2] }'
Příklad těla
{ "ids": [3, 1, 2] }
GET /api/v1/links
List links
Query: q, type=url|text|image, status=active|paused|exhausted, folder_id, per_page, page.
curl -s https://link.integrono.com/api/v1/links \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
POST /api/v1/links
Create a link
JSON or multipart (image). Fields: type, title, target_url, body_text, image, code, max_views, access_password, log_bots, domain, geo_mode=off|allow|deny, allowed_countries[], blocked_countries[], timezone, opens_at, closes_at, before_mode=message|url, after_mode=message|url, before_url, after_url, before_message, after_message, closed_message, schedule_enabled, ab_on, a_weight, variants[], a_steps[], steps[]. log_bots defaults to false: crawlers skip click history.
curl -s https://link.integrono.com/api/v1/links \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X POST \
-H "Content-Type: application/json" \
-d '{ "type": "url", "title": "Promo", "target_url": "https://shop.example.com/a", "code": "promo", "ab_on": true, "a_weight": 50, "a_steps": [{"name": "Land"}], "variants": [ {"label": "B", "url": "https://shop.example.com/b", "weight": 50, "steps": [{"name": "Land"}]} ] }'
Příklad těla
{
"type": "url",
"title": "Promo",
"target_url": "https://shop.example.com/a",
"code": "promo",
"ab_on": true,
"a_weight": 50,
"a_steps": [{"name": "Land"}],
"variants": [
{"label": "B", "url": "https://shop.example.com/b", "weight": 50, "steps": [{"name": "Land"}]}
]
}
GET /api/v1/links/{code}
Get one link
Full settings, public URL, A/B variants, and pixel URLs.
curl -s https://link.integrono.com/api/v1/links/{code} \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
PATCH /api/v1/links/{code}
Update a link
Same fields as create, plus status=active|paused and clear_password=true. Send only what you want to change. PUT works too.
curl -s https://link.integrono.com/api/v1/links/{code} \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X PATCH \
-H "Content-Type: application/json" \
-d '{ "status": "paused", "target_url": "https://shop.example.com/new", "allowed_countries": ["UA", "PL"] }'
Příklad těla
{
"status": "paused",
"target_url": "https://shop.example.com/new",
"allowed_countries": ["UA", "PL"]
}
DELETE /api/v1/links/{code}
Delete a link
Removes the link and its click history.
curl -s https://link.integrono.com/api/v1/links/{code} \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X DELETE
GET /api/v1/links/{code}/visits
Click history
Query: q, device, country, browser, os, opened=1|0, from, to, per_page, page. Each row has IP, place, device, browser, source, variant, and funnel steps.
curl -s https://link.integrono.com/api/v1/links/{code}/visits \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
GET /api/v1/links/{code}/stats
Stats and funnel
Day chart, country/device/referer/browser/OS/language split, and A/B conversion by pixel steps.
curl -s https://link.integrono.com/api/v1/links/{code}/stats \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
GET /api/v1/links/{code}/export
Export clicks CSV
Downloads every visit as a CSV file.
curl -s https://link.integrono.com/api/v1/links/{code}/export \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
GET /api/v1/alias
Check a custom path
Query: code. Returns whether that short path is free.
curl -s https://link.integrono.com/api/v1/alias \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
GET /api/v1/domains
List domains
Your branded hosts, verify token, CNAME target, and origin IP.
curl -s https://link.integrono.com/api/v1/domains \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json"
POST /api/v1/domains
Add a domain
Body: host. Then point DNS and call verify.
curl -s https://link.integrono.com/api/v1/domains \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X POST \
-H "Content-Type: application/json" \
-d '{ "host": "go.yourbrand.com" }'
Příklad těla
{ "host": "go.yourbrand.com" }
POST /api/v1/domains/{host}/verify
Verify a domain
Checks CNAME, A, TXT, or the well-known file. Turns the domain live when DNS is ready.
curl -s https://link.integrono.com/api/v1/domains/{host}/verify \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X POST
DELETE /api/v1/domains/{host}
Remove a domain
Drops the host from the account.
curl -s https://link.integrono.com/api/v1/domains/{host} \
-H "Authorization: Bearer $TOKEN" \
-H "Accept: application/json" \
-X DELETE