SDK TypeScript
revolink é um cliente tipado para a API v2. Ele não tem dependências e exige Node 18+ (ou qualquer ambiente com fetch global).
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'});
Mantenha a chave no seu servidor. Quem a tiver pode agir no seu espaço de trabalho dentro das permissões da chave.
Recursos
| Recurso | Métodos |
|---|---|
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()) percorre todos os links página por página.
Erros e novas tentativas
Toda requisição que falha lança um RevolinkError com status, code, message e, quando se aplicam, licenseLimitReached, requiredPermission e retryAfter. Os códigos são os mesmos de Erros.
Um 429 é sempre repetido (após Retry-After). Erros de rede e 5xx são repetidos apenas para GET, PUT e DELETE, então um link nunca é criado duas vezes. Opções: baseUrl, timeout (ms por tentativa), maxRetries (0 desativa as novas tentativas) e fetch.
Links úteis
- Pacote: npmjs.com/package/revolink
- Código-fonte e README completo: github.com/maximyaroshchuk/revolink-sdk-js