{"id":21222241,"url":"https://github.com/tiltcamp/outseta-api-client","last_synced_at":"2025-07-10T13:33:09.725Z","repository":{"id":40928075,"uuid":"313177615","full_name":"tiltcamp/outseta-api-client","owner":"tiltcamp","description":"Typed API client for Outseta.","archived":false,"fork":false,"pushed_at":"2023-01-07T23:01:55.000Z","size":1872,"stargazers_count":14,"open_issues_count":14,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-15T04:48:13.553Z","etag":null,"topics":["outseta"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/outseta-api-client","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tiltcamp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-11-16T03:06:29.000Z","updated_at":"2025-03-23T15:40:09.000Z","dependencies_parsed_at":"2023-02-08T03:15:32.644Z","dependency_job_id":null,"html_url":"https://github.com/tiltcamp/outseta-api-client","commit_stats":null,"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/tiltcamp/outseta-api-client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiltcamp%2Foutseta-api-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiltcamp%2Foutseta-api-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiltcamp%2Foutseta-api-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiltcamp%2Foutseta-api-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tiltcamp","download_url":"https://codeload.github.com/tiltcamp/outseta-api-client/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiltcamp%2Foutseta-api-client/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264585372,"owners_count":23632647,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["outseta"],"created_at":"2024-11-20T22:42:24.966Z","updated_at":"2025-07-10T13:33:09.029Z","avatar_url":"https://github.com/tiltcamp.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Outseta REST API Client\n\n[![Build Status](https://img.shields.io/github/workflow/status/tiltcamp/outseta-api-client/CI/main)](https://github.com/tiltcamp/outseta-api-client/actions?query=branch%3Amain)\n[![Test Coverage](https://img.shields.io/codacy/coverage/e981251e6d9c4fb0a201c5e4adaebf9f/main)](https://app.codacy.com/gh/tiltcamp/outseta-api-client/dashboard)\n[![Code Quality Grade](https://img.shields.io/codacy/grade/e981251e6d9c4fb0a201c5e4adaebf9f/main)](https://app.codacy.com/gh/tiltcamp/outseta-api-client/dashboard)\n[![Latest Version](https://img.shields.io/npm/v/outseta-api-client)](https://www.npmjs.com/package/outseta-api-client)\n[![NPM Bundle Size](https://img.shields.io/bundlephobia/minzip/outseta-api-client)](https://www.npmjs.com/package/outseta-api-client)\n[![License](https://img.shields.io/github/license/tiltcamp/outseta-api-client)](https://github.com/tiltcamp/outseta-api-client/blob/main/LICENSE)\n\nThis is a typed API client for [Outseta](https://www.outseta.com/) written in TypeScript. The only dependency is \n`fetch`, so it works in the browser and works with Node if `fetch` is [polyfilled](https://github.com/node-fetch/node-fetch).\nSee below for an example.\n\nThis package implements all the endpoints that are [publicly documented](https://documenter.getpostman.com/view/3613332/outseta-rest-api-v1/7TNfr6k), \nand even includes a few extras. Most issues are likely to be related to incorrect types: attributes missing \"optional\" \nflags in models, \"unknown\" types in the models, or missing filters that could be added. I've done my best to infer \nthe contents for these models, but as it was done entirely via conjecture there are bound to be some incorrect \nassumptions. If you catch any of these (or anything else for that matter), please submit an issue or feel free to \nsubmit a PR.\n\nI am also open to adding more endpoints - there are plenty of undocumented endpoints I can see being useful. As with the\nabove, issues and PRs are welcome.\n\n## Quick Start\n\n### Installing\nNPM:\n```shell\nnpm install outseta-api-client --save\n```\n\nYarn:\n```shell\nyarn add outseta-api-client\n```\n### Importing\nES6 import:\n```typescript\nimport OutsetaApiClient from 'outseta-api-client';\n```\n\nCommonJS require:\n```javascript\nvar OutsetaApiClient = require('outseta-api-client').default;\n```\n\nAdditionally, NodeJS requires a polyfill for `fetch`:\n```javascript\nglobalThis.fetch = require('node-fetch');\nvar OutsetaApiClient = require('outseta-api-client').default;\n```\n\n### Initialization\n\nIn the following examples, the subdomain is the beginning of your Outseta domain - so if your Outseta domain\nis `test-company.outseta.com`, it would be just `test-company` as seen below.\n\n#### Initializing without any keys:\n```typescript\nconst client = new OutsetaApiClient({ subdomain: 'test-company' });\n```\n#### Initializing with server-side API keys:\n```typescript\nconst client = new OutsetaApiClient({\n  subdomain: 'test-company',\n  apiKey: example_key,\n  secretKey: example_secret\n});\n```\n\n#### Initializing with a user access token:\n```typescript\nconst client = new OutsetaApiClient({\n  subdomain: 'test-company',\n  accessToken: jwt_user_token\n});\n```\n\n## Resources \u0026 Documentation\n#### Billing\n- [Invoices](https://tiltcamp.github.io/outseta-api-client/classes/api_billing_invoices.invoices.html#add)\n- [Plans](https://tiltcamp.github.io/outseta-api-client/classes/api_billing_plans.plans.html#getall)\n- [Plan Families](https://tiltcamp.github.io/outseta-api-client/classes/api_billing_plan_families.planfamilies.html#getall)\n- [Subscriptions](https://tiltcamp.github.io/outseta-api-client/classes/api_billing_subscriptions.subscriptions.html#add)\n- [Transactions](https://tiltcamp.github.io/outseta-api-client/classes/api_billing_transactions.transactions.html#getall)\n- [Usage](https://tiltcamp.github.io/outseta-api-client/classes/api_billing_usage.usage.html#add)\n\n#### CRM\n- [Accounts](https://tiltcamp.github.io/outseta-api-client/classes/api_crm_accounts.accounts.html#add)\n- [Activities](https://tiltcamp.github.io/outseta-api-client/classes/api_crm_activities.activities.html#add)\n- [Deals](https://tiltcamp.github.io/outseta-api-client/classes/api_crm_deals.deals.html#add)\n- [People](https://tiltcamp.github.io/outseta-api-client/classes/api_crm_people.people.html#add)\n\n#### Marketing\n- [Email List Subscriptions](https://tiltcamp.github.io/outseta-api-client/classes/api_marketing_email_list_subscriptions.emaillistsubscriptions.html#add)\n\n#### Support\n- [Cases](https://tiltcamp.github.io/outseta-api-client/classes/api_support_cases.cases.html#add)\n\n#### User\n- [Impersonate](https://tiltcamp.github.io/outseta-api-client/classes/api_user.user.html#impersonate)\n- [Login](https://tiltcamp.github.io/outseta-api-client/classes/api_user.user.html#login)\n- [Password](https://tiltcamp.github.io/outseta-api-client/classes/api_user_password.password.html#update)\n- [Profile](https://tiltcamp.github.io/outseta-api-client/classes/api_user_profile.profile.html#get)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiltcamp%2Foutseta-api-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftiltcamp%2Foutseta-api-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiltcamp%2Foutseta-api-client/lists"}