TypeScript SDK
revolink це типізований клієнт для API v2. Він не має залежностей і потребує Node 18+ (або будь-якого середовища з глобальним fetch).
npm install revolink
import {Revolink} from 'revolink';
const revolink = new Revolink({
apiKey: process.env.REVOLINK_API_KEY!,
workspaceId: process.env.REVOLINK_WORKSPACE_ID!,
});
const {shortLink} = await revolink.links.create({url: 'https://example.com'});
Тримайте ключ на сервері. Той, хто його має, може діяти у вашому робочому просторі в межах дозволів ключа.
Ресурси
| Ресурс | Методи |
|---|---|
revolink.links | list, iterate, get, create, upsert, update, delete, createMany, updateMany, deleteMany |
revolink.tags | list, get, create, update, delete |
revolink.domains | list, get, create, delete |
revolink.analytics | link, workspace |
for await (const link of revolink.links.iterate()) проходить усі посилання сторінка за сторінкою.
Помилки та повторні спроби
Кожен невдалий запит кидає RevolinkError з полями status, code, message і, коли вони стосуються справи, licenseLimitReached, requiredPermission та retryAfter. Коди ті самі, що в розділі Помилки.
429 завжди повторюється (після Retry-After). Мережеві помилки й 5xx повторюються лише для GET, PUT і DELETE, тож посилання ніколи не створюється двічі. Параметри: baseUrl, timeout (мс на спробу), maxRetries (0 вимикає повтори) і fetch.
Корисні адреси
- Пакет: npmjs.com/package/revolink
- Код і повний README: github.com/maximyaroshchuk/revolink-sdk-js