Skip to main content

Developers

Integration Reference

Public REST endpoints for pricing, books API keys, firm portfolio sync, and firm webhooks.

When to open your workspace

Docs are public. Sign in after access is provisioned to create API keys and webhooks.

Open workspace →

REST Endpoints

Full OpenAPI 3.1 spec at /openapi.yaml.

GET/api/public/pricing
Auth: NoneActive service catalog. Cached 10 minutes.
GET / POST/api/public-api-keys
Auth: SessionList or create public API keys. Raw key is returned once, at creation.
DELETE/api/public-api-keys/:id
Auth: SessionRevoke a public API key.
GET / POST/api/webhooks
Auth: SessionList or create outbound webhook subscriptions. HMAC-SHA256 signed (X-Lawenots-Signature); signing secret returned once, at creation. Delivery is a durable queue with backoff retries, not a single best-effort attempt — retries are currently checked once daily rather than continuously.
DELETE/api/webhooks/:id
Auth: SessionRemove a webhook subscription.
GET/api/webhooks/:id/deliveries
Auth: SessionDelivery history for one endpoint — status, attempt count, next retry time, and last error per attempt.
POST/api/contact
Auth: NoneRequest-access / contact form. Sends operator alert and user confirmation via Resend.
POST/api/stripe/create-subscription-checkout
Auth: SessionCreates a Stripe Checkout session for SaaS subscriptions (Close + Attest, Full-Service Bookkeeping). Price from service catalog.

Rate Limits

EndpointLimitWindowScope
/api/public/*120 requests60 secondsPer IP
/api/contact20 requests60 secondsPer IP

Rate limit headers: Retry-After, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset

Open verification

Independently verify Close + Attest evidence

Lawenots publishes verification tooling for Close + Attest so operators, firms, and auditors can independently validate evidence packages without a Lawenots account.

These are verification and contract artifacts — not the full product. Reconciliation matching and allocation drift logic remain proprietary.

Ecosystem & SDKs

Live OpenAPI is served at /openapi.yaml and versioned under Lawenots/openapi. Typed SDKs (@lawenots/sdk for TypeScript, lawenots-sdk for Python) are generated from that spec for firm integrators.

API Keys

Books API keys (live): Signed-in operators with org.manage permission can create and revoke keys at /books/settings/api-keys. Keys authenticate the Books public API; only a SHA-256 hash is stored server-side.

Firm portfolio API (REST v1): POST /api/v1/firm/api-keys provisions firm-scoped keys for portfolio sync and tax exports. REST-only for now — no settings UI.

Need a specific integration scope? Request access →

Developers — Lawenots