@aiminaabeejs/js-sdk
v0.0.29
Published
SDK for the Aiminaabee API
Readme
@aiminaabeejs/js-sdk
Typed HTTP client for the Aiminaabee API. Used by vendor dashboards and storefronts that talk to admin-api.
Install
npm install @aiminaabeejs/js-sdk @aiminaabeejs/typesCreate the client
import Aiminaabee from "@aiminaabeejs/js-sdk"
const sdk = new Aiminaabee({
baseUrl: "http://localhost:9000",
auth: {
type: "jwt", // or "session"
jwtTokenStorageMethod: "local", // browser: local | session | memory | custom | nostore
},
})| Surface | Purpose |
|---------|---------|
| sdk.auth | Platform admin (user) and vendor (member) auth at /auth/:actor_type/:provider/* |
| sdk.vendor | Seller panel (/vendor/*) — requires a member JWT |
| sdk.store | Storefront (/store/*) including customer auth |
HTTP payload types live in @aiminaabeejs/types (HttpTypes.*). Per-method details and examples are in JSDoc on each class (IDE hover / autocomplete).
Quick start — vendor shop
// 1. Register (or login) as member
const { token, has_seller } = await sdk.auth.register("member", "emailpass", {
email: "[email protected]",
password: "supersecret",
first_name: "Ada",
last_name: "Lovelace",
})
// 2. Create a shop (if needed)
const { seller } = await sdk.vendor.seller.create({
name: "Acme Shop",
email: "[email protected]",
currency_code: "usd",
})
// 3. Select active seller (sets session + x-seller-id on the client)
await sdk.vendor.seller.select(seller.id)
// 4. Dashboard shell — active shop from context
const { seller: active } = await sdk.vendor.seller.me()
// 5. Explicit id when you have it (settings deep-links, etc.)
await sdk.vendor.seller.retrieve(seller.id)
await sdk.vendor.seller.listMembers(seller.id)Full walkthrough: src/docs/vendor-seller.md.
Auth modes
jwt(default for SPAs): token stored client-side; sent asAuthorization: Bearer …. Seller tenancy for JWT is also carried asx-seller-idafterseller.select().session: token exchanged for a cookie viaPOST /auth/session; usefetchCredentials: "include"when the API is on another origin.
More: src/docs/auth.md.
Guides
| Guide | Topic |
|-------|--------|
| src/docs/auth.md | Actor-typed auth (user / member), OAuth, password reset, storefront pointer |
| src/docs/vendor-seller.md | Onboarding after member login, select, team, payment details, invites |
| src/docs/vendor-notifications.md | Seller-scoped notifications; external_id vs third_party_id |
| src/docs/README.md | Guide index |
Platform admin vendor management lives under HTTP /admin/sellers* (see apps/admin-api/src/api/admin/README.md). SDK admin client can be added later.
Method reference
Do not duplicate every endpoint in markdown. Use:
- Autocomplete / JSDoc on
sdk.vendor.*,sdk.auth.*,sdk.store.* - Backend routes under
apps/admin-api/src/api/
Publish note
This package ships dist/ plus these docs (README.md, src/docs/). Always bump together with compatible @aiminaabeejs/types when HTTP shapes change.
