{"data":{"name":"MagicStack AI Gateway","status":"ok","headers":{"required":["X-Tenant-Id","X-API-Key"],"optional":["X-Correlation-Id","Authorization"],"notes":{"model_management":"POST/PUT/DELETE /models require 'Authorization: Bearer <token>' and ADMIN role validation","tenant_api":"GET /models, /requests, and /rate-limit use X-Tenant-Id + X-API-Key; POST /execute additionally requires Authorization bearer token"}},"authorization":{"model_management":"Requires 'Authorization: Bearer <token>' with ADMIN role from JWT validation","execute":"Requires 'Authorization: Bearer <token>' for all tenants"},"endpoints":[{"method":"POST","path":"/execute","description":"Execute AI request (chat | image | embedding)"},{"method":"POST","path":"/chats","description":"Execute a stateful chat turn and persist session history"},{"method":"GET","path":"/agents","description":"List available agents (summary only)"},{"method":"POST","path":"/agents","description":"Create a new agent (ADMIN only)"},{"method":"GET","path":"/agents/:agentId/skills","description":"List agent skills (ADMIN only)"},{"method":"GET","path":"/custom-prompts","description":"List custom prompts for the authenticated user"},{"method":"POST","path":"/custom-prompts","description":"Create a custom prompt for the authenticated user"},{"method":"POST","path":"/chats/sessions","description":"Create an AI chat session"},{"method":"GET","path":"/chats/sessions","description":"List AI chat sessions for the authenticated user"},{"method":"GET","path":"/chats/references/:referenceId/sessions","description":"List AI chat sessions by reference id for the authenticated user"},{"method":"GET","path":"/chats/sessions/:sessionId","description":"Get one AI chat session"},{"method":"PATCH","path":"/chats/sessions/:sessionId","description":"Update AI chat session metadata"},{"method":"DELETE","path":"/chats/sessions/:sessionId","description":"Soft delete an AI chat session"},{"method":"GET","path":"/chats/sessions/:sessionId/messages","description":"List persisted messages for a chat session"},{"method":"GET","path":"/requests","description":"List AI requests for tenant"},{"method":"GET","path":"/requests/:id","description":"Get AI request details by id"},{"method":"GET","path":"/rate-limit","description":"Get current rate-limit usage"},{"method":"GET","path":"/models","description":"List valid models for tenant"},{"method":"POST","path":"/models","description":"Create permitted model (Authorization Bearer token with ADMIN role required)"},{"method":"PUT","path":"/models/:id","description":"Update permitted model (Authorization Bearer token with ADMIN role required)"},{"method":"DELETE","path":"/models/:id","description":"Delete permitted model (Authorization Bearer token with ADMIN role required)"}]}}