API i SDK. Build on Elido, in any language.
Pełne REST API, SDK dla TypeScript, Go i Python, a także serwer MCP do workflow z agentami AI. Limity zapytań skalują się wraz z planem; klucze API mają zasięg workspace z precyzyjnymi zestawami uprawnień.
- TypeScript, Go, and Python SDKs — all open-source
- OpenAPI 3.1 spec with interactive docs
- MCP server for Claude and AI agent workflows
- Per-scope API keys with plan-based rate limits
Official SDKs
Four SDKs. One API surface.
Every SDK is generated from the same OpenAPI 3.1 spec — when the API ships, the SDKs update the same day. TypeScript types, Go interfaces, and Python dataclasses stay in sync automatically.
Typed request/response objects. Works in Node.js, Cloudflare Workers, Vercel Edge, and Deno.
npm install @elido/sdkIdiomatic Go with context propagation and zero-allocation hot paths for high-throughput services.
go get github.com/elidoapp/elido-goSync and async (asyncio) clients. Typed with Pydantic v2 models. Available on PyPI.
pip install elido-sdkModel Context Protocol server — connect Elido link management to Claude, ChatGPT, Cursor, and any MCP-compatible AI agent.
npx @elido/mcp-serverAPI reference
OpenAPI 3.1. Interactive. Always current.
The OpenAPI spec at /openapi.json is the source of truth for every endpoint, parameter, and response shape. SDK types are generated from it — no drift, no hand-maintained stubs.
- Downloadable spec/openapi.json — machine-readable JSON
- Interactive referenceAuthenticated calls from the browser
- Postman collectionAuto-generated from the OpenAPI spec
- SDK generationTypes built from spec on every release
- 90-day deprecationBreaking changes flagged well in advance
- POST
/v1/linksCreate a short link - GET
/v1/links/{id}Retrieve a link by ID - PATCH
/v1/links/{id}Update link destination or metadata - DELETE
/v1/links/{id}Archive or delete a link - GET
/v1/linksList links (cursor-paginated) - POST
/v1/bulk/linksBulk-create up to 500 links
X-RateLimit-Remaining
X-RateLimit-Reset
Rate limits
Limits that scale with your plan.
Token-bucket rate limiting per workspace per API key. Burst allowances let you spike 10x for up to 5 seconds — so a batch link-creation job at the start of a campaign never hits the wall.
- X-RateLimit-Limit / Remaining / Reset headers on every response
- SDK auto-retries with exponential backoff on 429
- Bulk endpoints have separate, higher limits
- Per-scope keys — analytics read-only keys don't burn write quota
- Custom limits for high-volume enterprise workloads — contact sales
What you can do
- REST API ze specyfikacją OpenAPI 3.1
- SDK dla TypeScript, Go i Python
- Serwer MCP dla Claude, ChatGPT, Cursor
- Klucze API z zasięgiem workspace i uprawnieniami per-zakres
- Webhook do asynchronicznej dostawy zdarzeń
- Wewnętrzne API gRPC (edge → core)
Co stos API Elido daje deweloperom
Specyfikacja OpenAPI i kilka SDK to dopiero punkt wyjścia. Poniższe możliwości obejmują szczegóły, które mają znaczenie przy budowaniu integracji produkcyjnych.
Specyfikacja OpenAPI 3.1, kolekcja Postman i interaktywna dokumentacja — każdy endpoint udokumentowany z przykładami
Każdy endpoint API Elido jest udokumentowany w specyfikacji OpenAPI 3.1, dostępnej pod adresem /docs/api-reference oraz jako plik JSON do pobrania pod /openapi.json. Specyfikacja jest źródłem prawdy — typy SDK są z niej generowane, więc nie ma rozbieżności między dokumentacją a SDK. Interaktywna dokumentacja API pozwala wykonywać uwierzytelnione wywołania na swoim workspace bezpośrednio z przeglądarki (wklej klucz API, wybierz workspace, wywołaj endpoint). Kolekcja Postman jest automatycznie generowana ze specyfikacji OpenAPI i podlinkowana na stronie każdego endpointu. Changelog API jest wersjonowany razem z głównym changelogiem — breaking changes otrzymują 90-dniowe powiadomienie o deprecacji wraz z przewodnikiem migracji przed usunięciem.
SDK dla TypeScript, Go i Python — generowane ze specyfikacji OpenAPI, aktualizowane przy każdym wydaniu API
SDK TypeScript (@elido/sdk) jest publikowany w npm i obejmuje pełną powierzchnię API z typowanymi obiektami żądań i odpowiedzi. Obsługuje zarówno Node.js, jak i środowiska edge (Cloudflare Workers, Vercel Edge, Deno). SDK Go (github.com/elidoapp/elido-go) to idiomatyczne Go z propagacją kontekstu i zerowymi alokacjami na gorących ścieżkach dla zastosowań wysokiej przepustowości. SDK Python (elido-python, dostępny w PyPI) zawiera zarówno klienta synchronicznego, jak i asynchronicznego (asyncio). Wszystkie trzy SDK są generowane z tej samej specyfikacji OpenAPI za pomocą własnego generatora — aktualizacje są wydawane tego samego dnia co wydanie API. Istnieją utrzymywane przez społeczność SDK dla Ruby i PHP; są one wymienione w dokumentacji, ale nie są oficjalnie wspierane. Jeśli Twój język nie jest objęty, specyfikacja OpenAPI to najszybsza ścieżka do zbudowania klienta.
Klucze API workspace z uprawnieniami per-zakres — osobne klucze dla analityki tylko do odczytu, zarządzania linkami i administracji
Klucze API mają zasięg workspace (nie użytkownika) i zawierają zestaw uprawnień zdefiniowany przy tworzeniu klucza. Zakresy: links:read, links:write, links:delete, analytics:read, campaigns:read, campaigns:write, webhooks:manage, domains:manage, workspace:admin. Integracje analityczne tylko do odczytu powinny używać klucza wyłącznie z analytics:read. Pipelines CI/CD tworzące linki powinny używać links:write. Operacje administracyjne wymagają workspace:admin. Klucze można rotować indywidualnie bez unieważniania innych kluczy — rotacja generuje nową wartość klucza, stara wartość jest natychmiast unieważniana. Klucze są wyświetlane tylko raz przy tworzeniu; Elido przechowuje HMAC klucza, nie jego treść w postaci jawnej. W przypadku zespołów zasilanych przez SCIM, klucze kont serwisowych są zalecane zamiast osobistych kluczy API w integracjach produkcyjnych.
Serwer MCP Elido: połącz zarządzanie linkami z Claude, ChatGPT, Cursor i dowolnym agentem AI zgodnym z MCP
Serwer MCP Elido (@elido/mcp-server, publikowany w npm) implementuje Model Context Protocol i udostępnia zarządzanie linkami Elido jako narzędzia wywoływalne przez agenty AI. Obsługiwane narzędzia: create_link, get_link, update_link, list_links, get_analytics, create_campaign, list_campaigns. Serwer MCP uwierzytelnia się kluczem API workspace i ogranicza dostęp do narzędzi zgodnie z uprawnieniami klucza. Podłącz go do pętli narzędzi Claude, ChatGPT Plugins (function calling), kontekstu AI w Cursor lub dowolnego środowiska zgodnego z MCP. Przykład użycia: asystent AI, który przyjmuje brief w języku naturalnym ('stwórz pięć linków do tego launchu produktu, po jednym na kanał, z UTM z szablonu kampanii Q2-launch') i pięciokrotnie wywołuje create_link z właściwymi parametrami wywiedzionymi z briefu. Serwer MCP można hostować samodzielnie lub uruchamiać jako plik binarny npx do lokalnego developmentu.
Limity zapytań według planu — Free 60/min, Pro 300/min, Business 1 000/min — plus dopuszczalne przekroczenia
Limity zapytań API obowiązują per workspace per klucz API: Free 60 żądań/minutę, Pro 300/minutę, Business 1 000/minutę. Dopuszczalne przekroczenia pozwalają przekroczyć limit przez maksymalnie 5 sekund (10-krotność limitu) przed uruchomieniem twardego ograniczenia. Nagłówki limitów są dołączane do każdej odpowiedzi: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset (timestamp Unix). SDK zawierają automatyczne ponowne próby z wykładniczym wycofaniem przy odpowiedziach 429 — nie musisz implementować tego samodzielnie. W przypadku operacji masowych (tworzenie linków, eksport analityki) preferuj endpointy masowe (POST /bulk, zaplanowane eksporty) zamiast wywołań per element — endpointy masowe mają osobne, wyższe limity. Jeśli Twój przypadek użycia wymaga trwałej przepustowości powyżej limitów Business (np. self-hostowany redirector wysokiego wolumenu wywołujący API Elido do zapełniania cache), skontaktuj się z działem sprzedaży w celu ustalenia niestandardowego limitu.
Zespoły deweloperskie budujące na API Elido
Nazwy są tymczasowymi placeholderami — prawdziwe case studies klientów pojawią się tutaj po ich opublikowaniu.
“Typy SDK TypeScript są generowane ze specyfikacji OpenAPI — gdy Elido wypuszcza nową wersję API, aktualizujemy wersję pakietu i TypeScript natychmiast informuje nas, jeśli nasza integracja korzysta z przestarzałego pola. Żadnych niespodziewanych błędów w runtime.”
“Podłączyliśmy serwer MCP Elido do Claude, żeby nasz zespół contentowy mógł tworzyć i tagować linki kampanii z poziomu interfejsu czatu. Konfiguracja zajęła 20 minut. Zespół contentowy zgłasza teraz o 40% mniej ticketów supportowych do inżynierii w kwestii zarządzania linkami.”
“SDK Go z propagacją kontekstu wpasowuje się bezpośrednio w naszą siatkę usług. Tworzymy krótkie linki do stron śledzenia przesyłek po stronie serwera, w momencie tworzenia przesyłki — SDK obsługuje ponowne próby i wycofanie przy limitach w sposób przezroczysty.”
API i SDK Elido vs API Bitly vs API Rebrandly
Wszystkie trzy mają REST API. Różnice dotyczą jakości SDK, limitów zapytań, dostępności specyfikacji OpenAPI oraz obsługi MCP i agentów AI.
| Feature | Elido | API Bitly | API Rebrandly |
|---|---|---|---|
| Specyfikacja OpenAPI / Swagger | OpenAPI 3.1 — do pobrania, źródło prawdy dla SDK | Dostępna specyfikacja Swagger | Dostępna specyfikacja OpenAPI |
| Oficjalne SDK | TypeScript, Go, Python — generowane ze specyfikacji | Oficjalne SDK dla JavaScript i Python | Wyłącznie SDK JavaScript |
| Limit zapytań (Business) | 1 000 żądań/min z dopuszczalnym przekroczeniem | Plan Enterprise: zależy od umowy | 500 żądań/min (Business) |
| Serwer MCP dla agentów AI | Tak — @elido/mcp-server w npm | Niedostępne | Niedostępne |
| Uprawnienia klucza API per-zakres | Tak — 9 zakresów, przypisanie per klucz | Wyłącznie tylko do odczytu vs odczyt-zapis | Ograniczona kontrola zakresów |
| Dostarczanie webhook | Podpisane HMAC-SHA256, automatyczne ponowne próby, tryb SIEM | Niedostępne | Niedostępne |
| Wewnętrzne API gRPC | Tak — edge do core, niskolatencyjne wywołania wewnętrzne | Wyłącznie REST | Wyłącznie REST |
Pytania o API i SDK
Czy API jest wersjonowane? Jak działają breaking changes?
Tak. Aktualna wersja to v1, dostępna pod /v1/... Breaking changes są ogłaszane w changelogu z 90-dniowym oknem deprecacji przed usunięciem starego zachowania. Nieprzerywające uzupełnienia (nowe pola, nowe parametry opcjonalne) są dodawane bez zmiany wersji. Wersja API jest stabilna; jeśli kiedykolwiek zostanie wprowadzone v2, v1 będzie działać równolegle przez co najmniej 12 miesięcy. Specyfikacja OpenAPI pod /openapi.json zawsze odzwierciedla aktualną stabilną wersję.
Jakiej metody uwierzytelnienia używa API?
Uwierzytelnienie tokenem Bearer: dołącz klucz API w nagłówku Authorization jako 'Bearer elido_sk_...'. Wartość klucza jest wyświetlana tylko raz przy tworzeniu. W przypadku wywołań webhook od Elido do Twojego systemu, Elido podpisuje ciało żądania za pomocą HMAC-SHA256 z użyciem współdzielonego sekretu — zweryfikuj nagłówek X-Elido-Signature w swoim handlerze webhook. Dane uwierzytelniające OAuth2 client credentials są dostępne dla integracji partnerskich, gdzie dystrybucja klucza API workspace jest niepraktyczna — skontaktuj się z nami w sprawie wdrożenia partnera OAuth2.
Czy SDK TypeScript działa w Cloudflare Workers i środowiskach edge?
Tak. SDK TypeScript używa fetch API (dostępnego we wszystkich nowoczesnych środowiskach edge) i unika interfejsów API wyłącznie dla Node.js (brak fs, http, Buffer). Jest testowany na Cloudflare Workers, Vercel Edge Functions i Deno Deploy. Jeśli uruchamiasz SDK w ograniczonym środowisku edge, użyj lekkiej ścieżki importu (@elido/sdk/edge), która wyklucza narzędzia CLI i moduły wyłącznie dla Node.js z bundla.
Jak używać serwera MCP z Claude lub ChatGPT?
Dla Claude: dodaj serwer MCP do swojego pliku claude_desktop_config.json z kluczem API jako zmienną środowiskową — dokumentacja MCP Elido zawiera gotową konfigurację do skopiowania jednym blokiem. Dla ChatGPT (function calling): serwer MCP udostępnia manifest narzędzi JSON Schema pod /.well-known/mcp.json, który możesz zaimportować do konfiguracji akcji swojego GPT. Dla Cursor: dodaj serwer MCP jako lokalne narzędzie w ustawieniach Cursor za pomocą npx @elido/mcp-server. Wszystkie konfiguracje wymagają prawidłowego klucza API Elido z odpowiednimi zakresami.
Jaki jest model paginacji dla endpointów listujących?
Wszystkie endpointy listujące używają paginacji opartej na kursorze. Odpowiedź zawiera pole next_cursor (null jeśli nie ma więcej stron). Przekaż wartość kursora jako parametr zapytania cursor w kolejnym żądaniu. Domyślny rozmiar strony wynosi 50; maksimum to 200. Paginacja oparta na kursorze jest stabilna — dodawanie lub usuwanie rekordów między stronami nie powoduje pomijania ani duplikowania elementów, w odróżnieniu od paginacji opartej na offsecie. SDK zawierają helper auto-paginate, który dostarcza elementy jeden po jednym niezależnie od granic stron.
Czy mogę używać API do zarządzania wieloma workspace'ami z jednego klienta?
Tak. Klucze API mają zasięg workspace, ale możesz posiadać klucze dla wielu workspace'ów. Prefiks endpointu API to /v1/workspaces/{workspace_id}/... — podaj ID docelowego workspace'u. Jeśli budujesz narzędzie do zarządzania wieloma workspace'ami (np. portal agencji zarządzający workspace'ami klientów), będziesz posiadać jeden klucz API na workspace. Dane uwierzytelniające partnera OAuth2 z zasięgiem międzyworkspace'owym są dostępne dla integracji platformowych — skontaktuj się z działem sprzedaży.
Jaki jest limit zapytań na planie darmowym i jak jest egzekwowany?
Plan Free: 60 żądań na minutę na workspace. Limit jest egzekwowany na bramie API za pomocą algorytmu token bucket. Gdy kosz jest pusty, API zwraca HTTP 429 z nagłówkiem Retry-After wskazującym, kiedy dostępny będzie kolejny token. SDK automatycznie respektują Retry-After przy odpowiedziach 429. Pamiętaj, że endpointy masowe mają osobne limity — endpoint masowego tworzenia linków liczy się jako jedno żądanie niezależnie od liczby linków w payloadzie.
Czy istnieje środowisko sandbox lub testowe?
Tak — przekaż nagłówek X-Elido-Sandbox: true do dowolnego żądania API, aby uruchomić je w środowisku sandbox. Żądania sandbox tworzą prawdziwe obiekty w izolowanej partycji workspace (linki, kampanie itp.), ale ruch przekierowań nie jest obsługiwany przez produkcyjny edge. Używaj sandboxa do testowania integracji i pipeline'ów CI/CD. Obiekty sandbox nie wliczają się do przydziałów linków i kliknięć w Twoim planie. Sandbox resetuje się co 24 godziny — nie polegaj na danych sandbox w środowisku produkcyjnym.
Keep reading
Dostawa zdarzeń wychodzących podpisanych HMAC — asynchroniczne uzupełnienie synchronicznego API.
Zasób API, z którego będziesz korzystać najczęściej — twórz, aktualizuj i wykonuj zapytania o krótkie linki programowo.
Zapytaj o zdarzenia kliknięć i agregaty przez API analityki — te same dane co w dashboardzie ClickHouse.
Strona rozwiązania skierowana do deweloperów — REST, SDK, webhook i przegląd doświadczenia deweloperskiego.
Gotowy, aby wypróbować?
Zacznij od planu darmowego, uaktualnij, gdy będziesz potrzebować niestandardowej domeny.