API Endpoints
Base URLs
| Service | Host | Purpose |
|---|---|---|
| REST API | api.noorle.com | Administrative operations (plugins, agents, configurations) |
| MCP Gateway | mcp-{id}.noorle.com | Model Context Protocol for LLM tool access |
| Agent Gateway | agent-{id}.noorle.com | Agent-to-Agent communication protocol |
Versioning
Current API version:v1
REST API uses path versioning: /v1/capabilities, /v1/agents, etc.
Three API Types
1. REST API (api.noorle.com)
Traditional HTTP REST API for administration.
Use for:
- Plugin management (upload, list, versions)
- Agent configuration
- OAuth device flow authentication
- Capability management
2. MCP Gateway (mcp-{id}.noorle.com)
Model Context Protocol server providing tools to LLMs and agents.
Use for:
- Discovering available tools
- Calling tools (capabilities)
- Accessing resources
- Retrieving prompts
- Streamable HTTP - SSE for events, POST for requests
- HTTP - Stateless request-response
3. A2A Gateway (agent-{id}.noorle.com)
Agent-to-Agent protocol for multi-agent workflows.
Use for:
- Sending messages to agents
- Streaming responses
- Querying agent capabilities
- Managing tasks
- JSON-RPC 2.0 - Over HTTP/WebSocket
- SSE (Server-Sent Events) - For streaming
Authentication
All APIs support multiple authentication methods:API Key (Header)
Bearer Token (OAuth)
Device Flow (CLI)
Request Format
All APIs use JSON for request and response bodies.Headers
Common Request Fields
Response Format
Success Response
Error Response
Rate Limiting
All APIs implement rate limiting:X-RateLimit-Reset timestamp before retrying.
Rate Limits →
Error Codes
Common HTTP Status Codes
| Code | Meaning | Action |
|---|---|---|
| 200 | OK | Success |
| 201 | Created | Resource created |
| 400 | Bad Request | Fix your request |
| 401 | Unauthorized | Check authentication |
| 403 | Forbidden | Insufficient permissions |
| 404 | Not Found | Resource doesn’t exist |
| 429 | Too Many Requests | Wait before retrying |
| 500 | Internal Error | Server error, retry later |
JSON-RPC Error Codes
MCP and A2A use JSON-RPC 2.0 error codes:| Code | Message | Meaning |
|---|---|---|
| -32700 | Parse error | Invalid JSON |
| -32600 | Invalid Request | Bad method/params |
| -32601 | Method not found | Method doesn’t exist |
| -32602 | Invalid params | Wrong parameters |
| -32603 | Internal error | Server error |
Testing APIs
Using cURL
Using Postman
- Import OpenAPI spec from
https://api.noorle.com/openapi.json - Set
X-API-Keyheader in collection - Execute requests
Using SDK
Official SDKs available:- JavaScript/TypeScript -
npm install @noorle/sdk - Python -
pip install noorle-sdk - Go -
go get github.com/noorle/sdk-go
Choosing an API
API Clients
Official Clients:- Noorle CLI - Command-line tool for administration
- Console - Web UI for all operations
- SDKs - Typed clients for your language
- Postman Collection - Import and test APIs
- OpenAPI Schema - Integrate with code generators
- Webhooks - Event-driven integrations (future)