Início rápido

Instale o termo_core, defina o ambiente e faça sua primeira chamada a um serviço da Termotubos em menos de 5 minutos.

O termo_core é o SDK da Termotubos: todos os clientes dos nossos serviços num pacote só, em TypeScript (npm, para frontend e backend) e em Rust (crates.io). Cada aplicativo é um módulo (auth, bucket, portal...) e cada rota da API vira uma função, com o mesmo nome nas duas linguagens.

Ao terminar esta página você terá chamado o TermoAuth e lido um usuário, com 3 passos.

Sem documentação de API

Aqui você não monta requisição HTTP, URL nem cabeçalho. O SDK resolve o endereço pelo ambiente, manda a credencial e devolve o tipo certo. Se a rota existe na API, existe uma função para ela.

Instale o pacote

Fixe sempre a versão exata: cada mudança de contrato publica uma versão nova subindo só o último número, inclusive quando quebra código.

npm install termo_core --save-exact

Defina o ambiente

A única configuração é a variável AMBIENTE: LOCALHOST, SANDBOX ou PRODUCTION. Sem ela o processo para com uma mensagem clara, nunca cai em produção por engano.

.env
AMBIENTE=SANDBOX

No navegador não existe process.env: chame definir_ambiente_atual_pelo_codigo(import.meta.env.VITE_AMBIENTE) uma vez ao subir o app. Detalhes em Ambiente.

Chame uma função

Toda rota que exige login recebe uma CredencialDeAcesso como primeiro argumento.

import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_usuario, buscar_paginador_usuario } from "termo_core/auth";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);

const usuario = await buscar_pelo_id_usuario(credencial_de_acesso, id);
const pagina = await buscar_paginador_usuario(credencial_de_acesso, { pagina: 1 });

Próximos passos

Nesta página