Pular para o conteúdo

SDK para servidor (@owbase/node)

O @owbase/node é o SDK do servidor (Node.js 18.17 ou mais novo). Ele age como o seu backend, com uma chave de API, e acessa o que os escopos da chave permitem, sem passar pelas permissões dos recursos.

Janela do terminal
npm install @owbase/node
client.ts
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 chave vem do ambiente (OWBASE_API_KEY). Dentro de uma function, use as variáveis que o Owbase entrega: o endpoint em OWBASE_FUNCTION_API_ENDPOINT, o projeto em OWBASE_FUNCTION_PROJECT_ID e a chave da execução no header x-owbase-key (exemplo).

Cada método exige um escopo, mostrado na referência (por exemplo, users.read para users.list e rows.write para tablesDB.createRow). Sem ele, o erro é general_unauthorized_scope (401). Crie uma chave por backend, só com os escopos que ele usa, em Chaves de API.

Para fazer uma chamada com as permissões de um usuário (e não com a chave), use setJWT(jwt) no lugar de setKey. O JWT vem do navegador (account.createJWT()) ou, nas functions, do header x-owbase-user-jwt.

Tudo o que o @owbase/web tem, menos Realtime, mais Users, Tokens, Project e os métodos de estrutura (criar bancos, tabelas, colunas, índices e buckets). Arquivos do disco entram com InputFile, de @owbase/node/file.