Co zrobisz
- Wystawisz klucz API z odpowiednimi zakresami w sekcji Settings → API keys — token jest wyświetlany tylko raz, więc skopiuj go natychmiast.
- Skrócisz link jednym wywołaniem SDK lub poleceniem
curlw mniej niż minutę. - Będziesz używać kluczy idempotencji przy żądaniach mutujących, aby ponowne próby nigdy nie tworzyły duplikatów linków.
API Elido to REST + JSON, posiada dokumentację OpenAPI 3.1 i jest objęte limitami zapytań na klucz. Udostępniamy oficjalne biblioteki SDK dla TypeScript, Go i Python, które je obsługują. Serwer MCP w @elido/mcp-server udostępnia ten sam interfejs dla agentów AI.
Wygeneruj klucz API#
- Settings → API keys → Create key.
- Wybierz nazwę (zalecamy nazwę systemu, który będzie go używać:
zapier,internal-billing,marketing-cli). - Wybierz zakresy uprawnień (scopes). Cztery najczęstsze to:
links:read— listowanie i sprawdzanie linków.links:write— tworzenie, aktualizacja i usuwanie linków.analytics:read— zapytania o zdarzenia kliknięć.webhooks:write— zarządzanie subskrypcjami webhooków.
- Kliknij Create. Klucz zostanie wyświetlony tylko raz — przechowujemy wyłącznie jego skrót (hash).
Jeśli zgubisz klucz, unieważnij go na tej samej stronie i wygeneruj nowy. Unieważnione klucze są odrzucane we wszystkich regionach w ciągu 60 sekund.
Szybki start z TypeScript SDK#
import { ElidoClient } from "@elido/sdk";
const client = new ElidoClient({ apiKey: process.env.ELIDO_API_KEY! });
const link = await client.links.create({
destination: "https://acme.com/spring-sale",
slug: "spring-2026",
});
console.log(link.short_url);
Biblioteki SDK dla Go i Python działają w ten sam sposób. Pełna dokumentacja znajduje się pod adresem /api.
Szybki start z curl#
curl -X POST https://api.elido.app/v1/links \
-H "Authorization: Bearer $ELIDO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"destination":"https://acme.com/spring-sale","slug":"spring-2026"}'
Limity zapytań (Rate limits)#
W planie darmowym otrzymujesz 60 zapytań na minutę na klucz. Pro: 600/min. Business: 6000/min. Limit typu burst to 2× limitu standardowego; nagłówek odpowiedzi X-RateLimit-Remaining informuje Cię o aktualnym stanie.
Jeśli osiągniesz limit, API zwróci błąd 429 z ustawionym nagłówkiem Retry-After. Biblioteki SDK domyślnie implementują ponawianie prób z wykładniczym czasem oczekiwania (exponential-backoff) — wyłącz tę funkcję, jeśli Twoja aplikacja posiada własną politykę ponawiania.
Idempotentność#
Punkty końcowe (endpoints) modyfikujące dane akceptują nagłówek Idempotency-Key. Przekaż identyfikator UUID dla każdego planowanego zapisu; przechowujemy odpowiedź przez 24 godziny, dzięki czemu ponowne próby (błędy sieciowe, niejednoznaczne przekroczenia czasu) nie spowodują podwójnego utworzenia zasobu.
Biblioteki SDK dodają ten nagłówek automatycznie. Jeśli używasz bezpośrednio curl, wygeneruj klucz po stronie klienta i dołączaj go przy każdej ponownej próbie.
Webhooki#
Aby otrzymywać powiadomienia w czasie rzeczywistym zamiast odpytywania (polling), skonfiguruj webhooki w sekcji Settings → Webhooks — dostarczamy zdarzenia link.created, link.clicked.aggregated oraz domain.verified z podpisami HMAC-SHA256.