SDKs and OpenAPI
Generate typed Berrycrawl clients in nine languages from the public API contract.
The canonical SDK contract is backend/openapi.sdk.json. It contains only public data-plane endpoints; dashboard, admin, billing, internal auth, and operational routes are deliberately excluded.
Berrycrawl maintains Fern generator definitions for:
- TypeScript
- Python
- Go
- Ruby
- PHP
- Java
- C#
- Swift
- Rust
Until hosted packages are published, generate local clients from the repository:
pnpm openapi:export
pnpm sdk:check
pnpm sdk:generateGenerated source belongs under sdks/<language> and is ignored by the main repository. Do not hand-edit it. Fix controller annotations or DTO schemas, re-export OpenAPI, then regenerate.
Direct HTTP clients
You do not need an SDK to call Berrycrawl. Any HTTP client that supports bearer authentication and JSON works. Generate a client when typed request models, response models, retries, or language-native ergonomics justify the extra dependency.
The API Reference is generated from the same public document, so reference pages and generated clients describe one contract.