Primeira chamada
Os dois SDKs falam com https://cloud.owbase.dev/v1 e mandam por você os headers de identificação (X-Owbase-Project e, no servidor, X-Owbase-Key). Você só configura o cliente uma vez.
Pré-requisito: o domínio do app cadastrado em Plataformas (veja como).
npm install @owbase/webimport { Client } from '@owbase/web';
// O ID do projeto aparece no console, na Visão geral do projeto.export const client = new Client().setEndpoint('https://cloud.owbase.dev/v1').setProject('<ID_DO_PROJETO>');A primeira chamada cria uma conta, entra com ela e lê o usuário logado:
import { Account, ID } from '@owbase/web';import { client } from './client';
const account = new Account(client);
// Cria a conta e entra com ela. A sessão fica num cookie do navegador.await account.create({ userId: ID.unique(), email: '[email protected]', password: 'uma-senha-forte', name: 'Ana' });await account.createEmailPasswordSession({ email: '[email protected]', password: 'uma-senha-forte' });
const user = await account.get();console.log(`Olá, ${user.name} (${user.$id})`);Pré-requisito: uma chave de API com o escopo users.read (veja como). Node.js 18.17 ou mais novo.
npm install @owbase/nodenpm pkg set type=moduleA segunda linha marca a pasta como módulo ES, necessário para o await no topo do arquivo de exemplo.
import { Client } from '@owbase/node';
// A chave fica no ambiente do servidor (variável OWBASE_API_KEY), nunca no código nem no navegador.export const client = new Client() .setEndpoint('https://cloud.owbase.dev/v1') .setProject('<ID_DO_PROJETO>') .setKey(process.env.OWBASE_API_KEY ?? '');A primeira chamada lista os usuários do projeto:
import { Query, Users } from '@owbase/node';import { client } from './client';
// A chave precisa do escopo users.read.const users = new Users(client);const { total, users: primeiros } = await users.list({ queries: [Query.limit(5)] });console.log(`${total} usuários; os primeiros:`, primeiros.map((u) => u.email));OWBASE_API_KEY='<segredo da chave>' npx tsx primeira-chamada.tsDeu erro?
Seção intitulada “Deu erro?”Todo erro chega como OwbaseException, com o status HTTP em code e o motivo em type. Os mais comuns na primeira chamada:
type |
O que fazer |
|---|---|
general_unknown_origin |
Cadastre o domínio (ou localhost) em Plataformas. |
project_not_found |
Confira o ID em setProject(). |
general_unauthorized_scope |
Dê à chave o escopo que o método pede (como saber qual). |
user_already_exists |
A conta já existe: entre com createEmailPasswordSession. |
Mais em Erros.