Ir para o conteúdo

@xid-kit/core

Cliente do navegador para estado de sessão, acesso JWT de curta duração e auxiliares da Management API.

Ver como Markdown

Instalar e configurar

Aponte apiUrl para a origem da sua instância XID (hospedada ou auto-hospedada). O SDK nunca armazena segredo do cliente nem expõe material de refresh token a scripts do navegador.

import { XidClient } from '@xid-kit/core'

const xid = new XidClient({ apiUrl: 'https://xid.dev' })
await xid.load()
const token = await xid.getToken()

Ciclo de vida da sessão

  • load()/v1/me e popula o usuário, a sessão e a organização ativa.
  • signInPassword() estabelece uma sessão via cookie pelo fluxo de senha do Hosted Auth.
  • getToken() retorna um JWT de curta duração para chamadas de API. Verifique sem rede no seu servidor com JWKS.
  • setActiveOrganization() alterna o contexto da organização e limpa o cache de token antes de recarregar o estado.
  • signOut() revoga o cookie de sessão do navegador.

Auxiliares da Management API

A versão atual encapsula apenas o gerenciamento de chaves de API. Todos os outros recursos da Management API exigem chamadas REST diretas a /v1/ com Authorization: Bearer sk_live_xxx.

const keys = await xid.listApiKeys()
const created = await xid.createApiKey({ name: 'CI deploy', scopes: ['read'] })
await xid.revokeApiKey(created.id)

API exportada

Exportar Tipo Finalidade
XidClient class Cliente de navegador de nível superior: load, signIn, getToken, setActiveOrganization, signOut e auxiliares da Management API
XidStore class Store reativo independente de framework; assine com useSyncExternalStore nos bindings de framework
TokenManager class Cache de JWT de curta duração e renovação agendada (uso avançado e testes)
XidApiClient class Cliente HTTP para os endpoints /v1/me e de token
XidNetworkError class Lançado em falhas de transporte: erro de rede, resposta não JSON, 5xx sem corpo estruturado
makeXidError function Constrói um XidError estruturado para falhas de validação locais sem chamada de rede
isXidErrorShape function Type guard: verifica se um valor desconhecido está em conformidade com o formato XidError recebido na rede
decodeTokenClaims function Decodifica as declarações do payload JWT apenas para agendamento de expiração; não verifica a assinatura
isTokenExpiring function Retorna true quando o token expira dentro da janela de tolerância (padrão 10 s)
SESSION_STATUS tupla as const Valores válidos de status de sessão: active, pending, expired, removed, ended, revoked
CLIENT_STATUS tupla as const Valores válidos de status do cliente: loading, ready, degraded, error
PACKAGE constante de string Identificador de nome de pacote ‘@xid-kit/core’

Tipos

Tipo Descrição
XidUser Visão somente leitura do usuário autenticado (sem segredos ou hashes)
XidOrganization Visão pública da organização
XidOrganizationMembership Associação do usuário em uma organização com papel e permissões
XidSession Visão da sessão incluindo status, expiração e organização ativa
XidApiKey Chave de API sem segredo (visualização em lista)
XidApiKeyWithSecret Chave de API retornada uma única vez na criação; inclui o campo key
XidPage<T> Envelope de resposta paginado por cursor
CreateApiKeyInput Entrada para createApiKey
SignInPasswordInput Entrada para signInPassword
SignInResult Resultado de signInPassword: próximo passo ou URL de redirecionamento
SessionStatus União dos valores de SESSION_STATUS
ClientStatus União dos valores de CLIENT_STATUS
XidState Snapshot completo do estado do SDK obtido por assinatura do XidStore
XidStateListener Tipo de callback para listener de mudança de estado
Unsubscribe Tipo de retorno de XidStore.subscribe
GetTokenOptions Opções para getToken: template, skipCache, leewaySeconds, signal
XidClientOptions Opções do construtor de XidClient: apiUrl, fetcher, now
TokenResponse Formato bruto da resposta do endpoint de token
ClientStateResponse Formato bruto da resposta de /v1/me
DecodedTokenClaims Declarações do payload JWT retornadas por decodeTokenClaims

Documentação relacionada

Bindings de framework: @xid-kit/react. Verificação no servidor: @xid-kit/backend.

Navegação

Digite para pesquisar...

Use as teclas de seta para navegarPressione Enter para selecionarPressione Escape para fechar