rollfuse
← Voltar aos tutoriais

Emita e revogue uma Service Credential de ambiente

O @rollfuse/sdk-js se autentica com um bearer token vinculado a um único ambiente. Este tutorial emite esse token, usa-o para iniciar um RollfuseClient e depois o revoga.

Emita uma Service Credential

Chame POST /v1/environments/{environment_id}/credentials informando o ambiente ao qual a credential deve ficar vinculada:

curl -X POST \
  "https://api.rollfuse.com/v1/environments/env_9f3ab2/credentials" \
  -H "Authorization: Bearer $ROLLFUSE_ADMIN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "checkout-service-production"}'

A resposta traz o bearer token da nova credential. Esse token só aparece uma vez: salve-o imediatamente, porque a plataforma não o exibe de novo depois dessa chamada.

{
  "id": "cred_4k2n1p",
  "environmentId": "env_9f3ab2",
  "name": "checkout-service-production",
  "token": "rfcred_live_8f2a...",
  "createdAt": "2026-09-05T14:03:00Z"
}

Use o token em um client

Coloque o token em uma variável de ambiente, nunca em código versionado, e leia-o na opção credential do RollfuseClient:

import { RollfuseClient } from "@rollfuse/sdk-js";

const client = new RollfuseClient({
  baseUrl: "https://api.rollfuse.com",
  credential: process.env.ROLLFUSE_CREDENTIAL!, // e.g. rfcred_live_8f2a...
});

await client.start();

Se credential estiver ausente ou vazio, o construtor lança CredentialRequiredError antes de qualquer chamada de rede, então um deploy mal configurado falha na hora em vez de servir valores de fallback silenciosamente.

Mantenha uma credential por ambiente e por serviço

Emita uma credential separada para cada ambiente (staging, produção) e, dentro de um mesmo ambiente, uma credential separada para cada serviço que fala com a plataforma. Assim, um token vazado expõe apenas o acesso de leitura de um serviço a um ambiente, e revogá-lo não derruba mais nada.

Revogue uma credential

Quando um serviço é desativado, ou um token vaza, revogue-o imediatamente com POST /v1/credentials/{credential_id}/revoke:

curl -X POST \
  "https://api.rollfuse.com/v1/credentials/cred_4k2n1p/revoke" \
  -H "Authorization: Bearer $ROLLFUSE_ADMIN_TOKEN"

Um RollfuseClient que ainda está rodando com uma credential revogada continua servindo a última Configuration em cache, mas o próximo polling em GET /v1/config falha, então onConfigRefreshError dispara e o client para de receber atualizações até ser reiniciado com uma credential válida.

Rotacione sem downtime

Para rotacionar uma credential sem gerar uma janela sem avaliação, emita a substituta primeiro, faça o deploy do serviço com o novo ROLLFUSE_CREDENTIAL, confirme que ele inicia e avalia corretamente, e só então revogue a credential antiga.

Para decidir qual pacote de SDK precisa desse tipo de credential, veja Escolha o SDK certo para o seu caso.