Installation
Client setup
Python: Both synchronous (
HydraDB) and asynchronous (AsyncHydraDB) clients are available. They share an identical surface – choose based on your application’s concurrency model.Naming conventions
The REST API uses snake_case for all request and response fields. The SDKs adapt this to native idioms:TypeScript SDK uses snake_case for all parameter field names. Only method names are camelCase (e.g.,
client.recall.fullRecall({tenant_id: "...", max_results: 5})). This applies to every request object passed to an SDK method.SDK method structure
SDK methods are grouped by capability, not by URL path. The mapping is mostly intuitive but a few groups span multiple URL prefixes:
Additional clients available:
client.key for API key management, client.ingestionPipeline for pipeline operations, client.graphHealth for health checks, and client.metrics for metrics, client.passthrough for passthrough operations.
Method reference
Method names map to the URL by removing the leading slash and replacing path separators:Tenants
Ingestion + Memories (under upload)
Recall
List + Fetch (under fetch)
Knowledge Deletion
In Python, all method names use snake_case:
client.tenant.get_infra_status(), client.recall.full_recall(), etc.
Additional clients
Getting started
Create a tenant
A tenant is an isolated workspace. Most organizations create one tenant total, with sub-tenants for users or teams. See Multi-Tenant for the full model.getInfraStatus until provisioning completes:
Ingest knowledge
Upload documents, app sources, or both viaupload.knowledge:
Add user memories
Store user preferences and conversation history viaupload.addMemory:
infer defaults to false. Set infer: true for conversational content where you want HydraDB to extract implicit preferences. Use infer: false for content that should be stored verbatim.Recall
Three retrieval modes for different use cases:Browse and inspect
Type safety
Both SDKs are fully typed:
- Autocomplete for all method names and parameters
- Type checking for request and response objects
- Inline documentation for each parameter
- Compile-time validation for required vs optional fields
- Request parameters – every field documented in the API reference is reflected in method signatures
- Response objects – return types match the JSON schema for each endpoint
- Error types – exception structures mirror error response formats
- Nested objects – complex parameters and responses keep their full structure
Error handling
Both SDKs throw exceptions for non-2xx responses. Error objects expose the API’sdetail payload:
IDE-driven discovery
Whether you’re using TypeScript, Python, VS Code, PyCharm, or any modern IDE, the workflow is the same:- Type the method name → see all available methods
- Open the parentheses → see all required and optional parameters
- Press
Cmd+Space(macOS) orCtrl+Space(Windows/Linux) → get inline documentation
Related sections
- API Reference – complete endpoint documentation
- Error Responses – HTTP codes, error codes, retry patterns
- Quickstart – build your first integration in five minutes