API Overview
The MeetLoyd API provides programmatic access to all platform features. Build custom integrations, automate workflows, and embed AI agents in your applications.
At a Glance
| Aspect | Details |
|---|---|
| Base URL | https://app.meetloyd.com/api/v1 |
| Authentication | Bearer token (API key or OAuth access token) |
| Format | JSON request and response bodies |
| Versioning | URL-based (/api/v1/). Legacy /api/ alias also supported. |
| Rate Limits | Starter: 120/min, Growth: 500/min, Enterprise: 5000/min |
HTTP Status Codes
| Code | Meaning |
|---|---|
| 200 | Success |
| 201 | Created |
| 204 | No Content (successful delete) |
| 400 | Bad Request -- invalid parameters |
| 401 | Unauthorized -- invalid or missing API key |
| 403 | Forbidden -- insufficient permissions |
| 404 | Not Found |
| 409 | Conflict -- resource already exists |
| 422 | Unprocessable Entity -- validation error |
| 429 | Rate Limited |
| 500 | Internal Server Error |
Available Endpoints
Core Resources
| Resource | Operations |
|---|---|
| Agents | List, Create, Get, Update, Delete, Chat |
| Conversations | List, Get, Delete, End |
| Tasks | List, Create, Get, Run, Cancel |
| Workflows | List, Create, Get, Update, Delete, Run |
| Memory | Get, Set, Delete, Search |
| Templates | List, Create, Get, Update, Delete |
| Manifests | Validate, Resolve, Deploy, List, Export, Upgrade, Rollback |
Versioning
Every response includes an X-API-Version: v1 header. Breaking changes result in a new major version (/api/v2). Non-breaking additions ship within the same version. Deprecated versions are supported for 12 months with Deprecation and Sunset headers.
SDKs
Official SDKs are available for TypeScript, Python, and CLI.
Request Format
All requests use JSON with the Content-Type: application/json header. Include your API key in the Authorization: Bearer YOUR_API_KEY header.
For GET requests, use query parameters for filtering, pagination, and sorting.
Response Format
Success Response
Responses wrap data in a data field for single resources, or data + pagination for lists.
Error Response
Errors return a structured object with code, message, and optional details fields.
Error Codes
| Code | Description |
|---|---|
AUTHENTICATION_ERROR | Invalid API key |
AUTHORIZATION_ERROR | Missing permissions |
VALIDATION_ERROR | Invalid request parameters |
NOT_FOUND | Resource doesn't exist |
CONFLICT | Resource conflict |
RATE_LIMITED | Too many requests |
INTERNAL_ERROR | Server error |
Rate Limits
| Plan | Requests/min | Burst |
|---|---|---|
| Starter | 120 | 200 |
| Growth | 500 | 800 |
| Enterprise | 5000 | 8000 |
Rate limit headers are included in every response: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
Pagination
| Parameter | Type | Default | Max |
|---|---|---|---|
limit | integer | 20 | 100 |
offset | integer | 0 | -- |
Responses include a pagination object with total, limit, offset, and hasMore.
Filtering & Sorting
Many endpoints support filtering via query parameters (e.g., ?teamId=team-123&state=active) and sorting via the sort parameter (e.g., ?sort=createdAt:desc).
Testing
Use test mode with sk_test_ prefixed API keys for development. Test mode uses a sandbox environment with no charges, relaxed rate limits, and non-persistent data.
Webhooks
Receive real-time event notifications. See Webhooks for details on subscribing to events like conversation.completed, task.failed, and workflow.completed.
Next: Learn about API Authentication to secure your API requests.