API
Maak en beheer korte links vanuit scripts en apps. De API is gratis. Maak een sleutel aan in je dashboard onder API-sleutels en stuur die mee als bearer-token.
Authenticatie
Authorization: Bearer gz_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Sleutels worden één keer getoond. Behandel ze als wachtwoorden: iedereen met je sleutel kan links aanmaken en bewerken in je account. Trek een gelekte sleutel in via het dashboard.
Limieten
- 60 verzoeken per minuut per sleutel.
- 500 nieuwe links per dag per account.
- Bestemmingen worden gecontroleerd met Google Safe Browsing en onze blokkeerlijst. Andere link-verkorters kunnen niet als bestemming worden gebruikt.
Een link aanmaken
curl -X POST https://gozi.to/api/my/links \
-H "Authorization: Bearer $GOZI_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/launch", "code": "launch"}'
code is optioneel (4–32 letters, cijfers, - of _). Laat het weg voor een willekeurige code van 7 tekens. Antwoord 201:
{
"link": {
"code": "launch",
"shortUrl": "https://gozi.to/launch",
"url": "https://example.com/launch",
"status": "active",
"statusReason": null,
"custom": true,
"createdAt": 1790000000000,
"expiresAt": null
}
}
Links opvragen
GET /api/my/links?limit=25&cursor=<nextCursor>&q=<search>&clicks=1
Nieuwste eerst. Geef nextCursor van de vorige pagina mee om de volgende op te halen. clicks=1 voegt het totale aantal menselijke kliks toe.
Ophalen, bewerken, verwijderen
GET /api/my/links/{code}
PATCH /api/my/links/{code} {"url": "https://new.example"} or {"status": "disabled" | "active"}
DELETE /api/my/links/{code}
Statistieken
GET /api/my/links/{code}/stats
Geeft de menselijke kliks van de laatste 90 dagen en van altijd, kliks per dag, en de belangrijkste landen, verwijzers, apparaten, browsers en besturingssystemen. Bots en linkvoorbeelden (Slack, WhatsApp, enzovoort) worden apart geteld in botClicks. Resultaten worden ongeveer 5 minuten gecachet.
Fouten
Fouten gebruiken HTTP-statuscodes en een JSON-body:
{ "error": { "code": "slug_taken", "message": "That custom link is already taken." } }
400ongeldige invoer (invalid_url,invalid_slug, …)401ontbrekende, ongeldige of ingetrokken sleutel409eigen link al bezet422bestemming niet toegestaan (destination_blocked)429snelheids- of daglimiet bereikt
Een machineleesbare beschrijving van elk endpoint staat op /openapi.json.
