@phosra/sdk
v0.1.0
Published
Official TypeScript SDK for the Phosra child safety API
Downloads
89
Maintainers
Readme
@phosra/sdk
Official TypeScript SDK for the Phosra child-safety API.
Installation
Within the monorepo, web/ and browser/ resolve @phosra/sdk via npm workspaces — no manual install needed.
For external consumers:
npm install @phosra/sdkQuick Start
import { PhosraClient } from "@phosra/sdk";
// User-authenticated client (browser or server)
const phosra = new PhosraClient({ accessToken: "eyJ..." });
const families = await phosra.families.list();
const children = await phosra.children.list(families[0].id);Device Authentication
const phosra = PhosraClient.forDevice({ deviceKey: "dk_..." });
const policy = await phosra.devices.getPolicy();Token Refresh
const phosra = new PhosraClient({
accessToken: token,
onTokenExpired: async () => {
const tokens = await phosra.auth.refresh({ refresh_token: stored });
stored = tokens.refresh_token;
return tokens.access_token;
},
});Importing in web/
// Preferred — use the SDK client
import { PhosraClient } from "@phosra/sdk";
// Types only
import type { Family, Child, ChildPolicy } from "@phosra/sdk";Note:
web/src/lib/api.tsis a legacy API client that predates this SDK. New code should import from@phosra/sdkinstead. The legacy client will be migrated in a future PR.
Importing in browser/
import { PhosraClient } from "@phosra/sdk";The monorepo workspace config resolves @phosra/sdk to packages/sdk automatically.
Available Resources
| Resource | Methods |
| ------------------ | --------------------------------------------- |
| auth | register, login, refresh, logout, me |
| families | list, create, get, update, delete |
| children | list, create, get, update, delete, ageRatings |
| members | list, add, remove |
| policies | list, create, get, update, delete, activate, pause, generateFromAge |
| rules | list, create, update, delete, bulkUpsert |
| enforcement | trigger, listJobs, getJob, getResults, retry |
| platforms | list, get, byCategory, byCapability |
| compliance | list, connect, disconnect, verify |
| webhooks | list, create, test |
| ratings | systems, forAge, convert |
| standards | browse, adopt, remove |
| setup | quick |
| devices | register, getPolicy, report |
| reports | familyOverview |
| sources | list, connect, get, sync, disconnect |
Building
cd packages/sdk && npm run build