API Reference
The Tenzro Cloud API is a RESTful API that provides access to all platform services. All endpoints are available at https://api.cloud.tenzro.com.
Base URL
https://api.cloud.tenzro.com
Authentication
All requests require an API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Request Format
All requests should include Content-Type: application/json for POST/PUT/PATCH requests. Query parameters are used for filtering and pagination.
Response Format
All responses are JSON. Successful responses include:
{"success": true,"data": { ... }}
Error responses include:
{"error": "Error Type","message": "Human readable error message","details": { ... }}
Available Endpoints
Health
| Method | Path | Description |
|---|---|---|
| GET | /health | API health check |
Vec (Vector Database)
| Method | Path | Description |
|---|---|---|
| GET | /cloud/vec/databases | List vector databases |
| POST | /cloud/vec/databases | Create vector database |
| GET | /cloud/vec/databases/:id | Get database details |
| DELETE | /cloud/vec/databases/:id | Delete database |
| POST | /cloud/vec/databases/:id/vectors | Insert vectors |
| POST | /cloud/vec/databases/:id/search | Search vectors |
Kev (Key-Value Store)
| Method | Path | Description |
|---|---|---|
| GET | /cloud/kev/stores | List key-value stores |
| POST | /cloud/kev/stores | Create key-value store |
| GET | /cloud/kev/stores/:id | Get store details |
| DELETE | /cloud/kev/stores/:id | Delete store |
| GET | /cloud/kev/stores/:id/keys | List keys in store |
| POST | /cloud/kev/stores/:id/keys | Set a key value |
| GET | /cloud/kev/stores/:id/keys/:key | Get a key value |
| DELETE | /cloud/kev/stores/:id/keys/:key | Delete a key |
Data (PostgreSQL)
| Method | Path | Description |
|---|---|---|
| GET | /cloud/data/databases | List databases |
| POST | /cloud/data/databases | Create database |
| GET | /cloud/data/databases/:id | Get database details |
| DELETE | /cloud/data/databases/:id | Delete database |
| POST | /cloud/data/databases/:id/query | Execute SQL query |
AI Inference
| Method | Path | Description |
|---|---|---|
| POST | /cloud/ai/infer | Text generation and chat |
| POST | /cloud/ai/embed | Generate embeddings |
| GET | /cloud/inference-endpoints | List inference endpoints |
| POST | /cloud/inference-endpoints | Create inference endpoint |
Agents
| Method | Path | Description |
|---|---|---|
| GET | /cloud/agent | List agents |
| POST | /cloud/agent | Create agent |
| GET | /cloud/agent/:id | Get agent details |
| DELETE | /cloud/agent/:id | Delete agent |
| POST | /cloud/agent/:id/chat | Chat with agent |
| POST | /cloud/agent/:id/activate | Activate agent |
Workflows
| Method | Path | Description |
|---|---|---|
| GET | /cloud/workflow | List workflows |
| POST | /cloud/workflow | Create workflow |
| GET | /cloud/workflow/:id | Get workflow details |
| DELETE | /cloud/workflow/:id | Delete workflow |
| POST | /cloud/workflow/:id/execute | Execute workflow |
MCP Servers
| Method | Path | Description |
|---|---|---|
| GET | /cloud/server | List servers |
| POST | /cloud/server | Create server |
| GET | /cloud/server/:id | Get server details |
| DELETE | /cloud/server/:id | Delete server |
| POST | /cloud/server/:id/chat | Chat with server |
File Storage
| Method | Path | Description |
|---|---|---|
| GET | /cloud/file/buckets | List storage buckets |
| POST | /cloud/file/buckets | Create bucket |
| GET | /cloud/file/buckets/:id | Get bucket details |
| DELETE | /cloud/file/buckets/:id | Delete bucket |
| GET | /cloud/file/buckets/:id/files | List files in bucket |
| POST | /cloud/file/buckets/:id/files | Upload file |
| DELETE | /cloud/file/buckets/:id/files/:path | Delete file |
Security
| Method | Path | Description |
|---|---|---|
| GET | /cloud/security/keys | List encryption keys |
| POST | /cloud/security/keys | Create encryption key |
| POST | /cloud/security/encrypt | Encrypt data |
| POST | /cloud/security/decrypt | Decrypt data |
Enclaves
| Method | Path | Description |
|---|---|---|
| GET | /cloud/enclave/vms | List confidential VMs |
| POST | /cloud/enclave/vms | Create confidential VM |
| GET | /cloud/enclave/vms/:id | Get VM details |
| DELETE | /cloud/enclave/vms/:id | Delete VM |
Hub
| Method | Path | Description |
|---|---|---|
| GET | /cloud/hub/models | List available models |
| GET | /cloud/hub/models/:id | Get model details |
Entities (Organizations)
| Method | Path | Description |
|---|---|---|
| GET | /cloud/entities | List entities you belong to |
| POST | /cloud/entities | Create entity |
| GET | /cloud/entities/:id | Get entity details |
| PUT | /cloud/entities/:id | Update entity |
| DELETE | /cloud/entities/:id | Delete entity |
| GET | /cloud/entities/:id/members | List members |
| POST | /cloud/entities/:id/members/invite | Invite member |
| PUT | /cloud/entities/:id/members/:userId | Update member role |
| DELETE | /cloud/entities/:id/members/:userId | Remove member |
| POST | /cloud/entities/:id/transfer | Transfer ownership |
| GET | /cloud/entities/:id/projects | List entity projects |
| POST | /cloud/entities/:id/projects | Create entity project |
SDK Usage
Use the official SDKs for easy integration:
TypeScript/JavaScript
npm install @tenzro/cloud
import { Tenzro } from '@tenzro/cloud';const tenzro = new Tenzro({apiKey: process.env.TENZRO_API_KEY,});// Use any serviceconst databases = await tenzro.vec.list();const result = await tenzro.ai.infer({model: 'gemini-2.5-flash',messages: [{ role: 'user', content: 'Hello!' }],});
Python
pip install tenzro-cloud
from tenzro_cloud import Tenzrotenzro = Tenzro(api_key=os.environ.get("TENZRO_API_KEY"))# Use any servicedatabases = tenzro.vec.list()result = tenzro.ai.infer(model="gemini-2.5-flash",messages=[{"role": "user", "content": "Hello!"}])
Rate Limits
API rate limits are per-key and per-service. Default limits are:
- Starter: 100 requests/min, 1,000 AI tokens/day
- Professional: 1,000 requests/min, 100,000 AI tokens/day
- Enterprise: Custom limits
Error Handling
Common HTTP status codes:
| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Resource created |
| 400 | Bad request - invalid parameters |
| 401 | Unauthorized - invalid or missing API key |
| 403 | Forbidden - insufficient permissions |
| 404 | Resource not found |
| 429 | Rate limit exceeded |
| 500 | Internal server error |