Lago JavaScript API Client
npm install @gaozuo/lago-javascript-clientThis is a JavaScript wrapper for Lago API. Works in Cloudflare Workers, Deno, and Node.js. Generated from the Lago OpenAPI document.


| Project | Release Badge |
|--------------------|-----------------------------------------------------------------------------------------------------|
| Lago |  |
| Lago JavaScript Client |  |
For npm users:
``bash`
npm install lago-javascript-client
`typescript
// npm
import { Client, getLagoError } from 'lago-javascript-client';
// Deno
import { Client, getLagoError } from 'https://deno.land/x/lago/mod.ts';
const lagoClient = Client('__YOUR_API_KEY__');
try {
const { data } = await lagoClient.billableMetrics.createBillableMetric(billableMetric);
} catch (error) {
const lagoError = await getLagoError
}
`
This SDK uses the Fetch API and natively supported Node.js version >= 18. For other Node versions:
1. Ideally, run Node with the --experimental-fetch flag
1. Otherwise, polyfill the Fetch API by doing both:
1. Pass a Fetch instance to the Lago client
`typescript
import { Client } from 'lago-javascript-client';
import fetch from 'node-fetch';
const lagoClient = Client("api_key", { customFetch: fetch });
`
Check the Lago API reference
Use the get getLagoError<>() utility function to extract the error object and TypeScript type:
`typescript`
try {
const { data } = await lagoClient.billableMetrics.createBillableMetric(billableMetric);
} catch (error) {
const lagoError = await getLagoError
}
Uses dnt to build and test for Deno and Node.
Change the affected fields in scripts/build_npm.ts and commit to GitHub. GitHub Actions will build and deploy to npm.
Requires Deno and Node.js >= 18
`bash`
deno task generate:openapi
`bash`
deno task test
`bash`
deno task build
`bash``
deno task build
cd npm
npm publish
The Lago documentation is available at doc.getlago.com.
The contribution documentation is available here
Lago JavaScript client is distributed under MIT license.