faturis-sdk-js
v1.0.1
Published
TypeScript/JavaScript client for the Faturis invoicing API.
Maintainers
Readme
faturis-sdk-js
Cliente TypeScript/JavaScript para a API Faturis (faturação eletrónica), equivalente ao pacote Python faturis-sdk-python.
Requisitos
- Node.js 18 ou superior (
fetchnativo eAbortSignal.timeout). - O pacote publicado é ESM (
"type": "module"). Useimportem vez derequire, ou importação dinâmica em projetos CommonJS.
Instalação
npm install faturis-sdk-jsUso
import { FaturisClient } from "faturis-sdk-js";
const client = new FaturisClient({
clientId: "...",
clientSecret: "...",
baseUrl: "https://...",
tokenUrl: "https://.../token",
});
// ou Keycloak:
// new FaturisClient({
// clientId: "...",
// clientSecret: "...",
// baseUrl: "https://...",
// keycloakUrl: "https://...",
// realm: "...",
// });
const page = await client.invoices.list({ page: 1, pageSize: 10 });
const series = await client.series.list({ limit: 50 });Os filtros de listagem usam camelCase no SDK; as query strings enviadas à API seguem snake_case (page_size, document_type, etc.), como no cliente Python.
Os recursos REST usam o prefixo /api em relação a baseUrl (por exemplo GET /api/v1/series/). Por omissão o cliente envia pedidos para {baseUrl}/api/...; pode alterar com a opção apiPathPrefix (por exemplo apiPathPrefix: "" se a API não tiver segmento /api).
Exemplo
Ver examples/basic.mjs (variáveis de ambiente: CLIENT_ID, CLIENT_SECRET, BASE_URL, TOKEN_URL ou KEYCLOAK_URL + KEYCLOAK_REALM).
node --env-file=examples/.env examples/basic.mjs
Licença
MIT
