This is a typed API client for Outseta written in TypeScript. The only dependency is
fetch
, so it works in the browser and works with Node if fetch
is polyfilled.
See below for an example.
This package implements all the endpoints that are publicly documented, and even includes a few extras. Most issues are likely to be related to incorrect types: attributes missing "optional" flags in models, "unknown" types in the models, or missing filters that could be added. I've done my best to infer the contents for these models, but as it was done entirely via conjecture there are bound to be some incorrect assumptions. If you catch any of these (or anything else for that matter), please submit an issue or feel free to submit a PR.
I am also open to adding more endpoints - there are plenty of undocumented endpoints I can see being useful. As with the above, issues and PRs are welcome.
NPM:
npm install outseta-api-client --save
Yarn:
yarn add outseta-api-client
ES6 import:
import OutsetaApiClient from 'outseta-api-client';
CommonJS require:
var OutsetaApiClient = require('outseta-api-client').default;
Additionally, NodeJS requires a polyfill for fetch
:
globalThis.fetch = require('node-fetch');
var OutsetaApiClient = require('outseta-api-client').default;
In the following examples, the subdomain is the beginning of your Outseta domain - so if your Outseta domain
is test-company.outseta.com
, it would be just test-company
as seen below.
const client = new OutsetaApiClient({ subdomain: 'test-company' });
const client = new OutsetaApiClient({
subdomain: 'test-company',
apiKey: example_key,
secretKey: example_secret
});
const client = new OutsetaApiClient({
subdomain: 'test-company',
accessToken: jwt_user_token
});