Available SDKs
We provide official SDKs for the following languages:- TypeScript / JavaScript - For Node.js, Deno, Bun, and browsers
- Python - Synchronous and async support
- Go - Full type-safe Go SDK
- CLI - Full-featured command-line interface
TypeScript
Installation
Quick Start
Features
- ✅ Full TypeScript support with type inference
- ✅ Promise-based async API
- ✅ Automatic retries with exponential backoff
- ✅ Streaming support for real-time responses
- ✅ Works in Node.js, Deno, Bun, and browsers
Repository
github.com/CaseMark/casedev-typescriptPython
Installation
Quick Start
Async Support
Features
- ✅ Full type hints with modern Python
- ✅ Synchronous and asynchronous clients
- ✅ aiohttp support for better async performance
- ✅ Automatic retries and error handling
- ✅ Python 3.9+ support
Repository
github.com/CaseMark/casedev-pythonGo
Installation
Quick Start
Features
- Full type safety with Go generics
- Automatic retries with exponential backoff (2 retries by default)
- Configurable via
option.With*helpers - Environment variable auto-detection (
CASEDEV_API_KEY) - Raw HTTP response access via
option.WithResponseInto
Repository
github.com/CaseMark/casedev-goCLI
Installation
Quick Start
Features
- All API operations available as CLI commands
- JSON, YAML, and interactive output formats (
--format json|yaml|explore) - File upload via
@prefix (--arg @file.pdf) - Pipe-friendly: reads JSON/YAML from stdin
- Shell completions for bash, zsh, and fish
- Debug mode with full HTTP logging (
--debug)
Command Structure
Commands follow aresource:version:sub action pattern:
Repositories
- CLI: github.com/CaseMark/casedev-cli
- Homebrew tap: github.com/CaseMark/homebrew-casedev
Authentication
All SDKs require an API key from the Case.dev dashboard.CASEDEV_API_KEY environment variable. No additional configuration is needed.
API keys starting with sk_case_ are production keys. Development keys are available for testing.
Scoped Permissions
API keys can be scoped to specific services with read or write access. If your key lacks permission for a service, you’ll receive a403 Forbidden error. Check your key’s permissions in the dashboard.
Error Handling
All SDKs provide typed error classes for handling API errors: TypeScript:Rate Limits
All API requests are subject to rate limits based on your plan. SDKs automatically handle rate limit responses with exponential backoff retries.Support
- Documentation: docs.case.dev
- Email: support@casemark.com
- Community: case.dev/slack
- GitHub Issues: Report SDK bugs in the respective repository