{ "name": "Sylvia API Agentic Access Contract", "description": "How autonomous agents access and drive the Sylvia API \u2014 authentication, permissions, idempotency, error semantics, and reversibility.", "version": "1.0.0", "url": "https://sylvia-api.com/.well-known/agentic-access-contract.json", "interfaces": [ { "type": "MCP", "url": "https://api.sylvia-api.com/mcp", "transport": "Streamable HTTP", "tools": "26 read + account/format tools" }, { "type": "REST", "url": "https://api.sylvia-api.com/v1/reddit", "method": "GET, read-only" } ], "authentication": { "dataEndpoints": { "scheme": "apiKey", "header": "X-API-KEY", "obtain": "https://dashboard.sylvia-api.com/sign-up" }, "accountEndpoints": { "scheme": "apiKey", "header": "x-sylvia-auth" } }, "permissions": { "readOnly": true, "idempotent": true, "rateLimits": { "free": "480 req/min", "strela": "1200 req/min", "svetka": "2400 req/min", "enterprise": "3600 req/min" } }, "semantics": { "envelope": "{\"success\": true, \"data\": {...}, \"request_id\": \"\"}", "idempotency": "All operations are GET and read-only; repeated requests are safe to retry.", "errors": [ { "code": "BAD_REQUEST", "status": 400, "meaning": "Invalid endpoint or parameters" }, { "code": "UNAUTHORIZED", "status": 401, "meaning": "Missing or invalid API key" }, { "code": "FORBIDDEN", "status": 403, "meaning": "Invalid key or endpoint not permitted" }, { "code": "NOT_FOUND", "status": 404, "meaning": "Resource not found" }, { "code": "LOW_BALANCE", "status": 402, "meaning": "Insufficient credits for the request" }, { "code": "RATE_LIMITED", "status": 429, "meaning": "Rate limit exceeded; honor X-RateLimit-Reset and Retry-After" }, { "code": "FEATURE_LOCKED", "status": 403, "meaning": "Format or template above the current tier" }, { "code": "TIER_EXPIRED", "status": 403, "meaning": "Paid tier lapsed; templates locked" } ] }, "reversibility": { "description": "Read-only surface; no state is mutated, no data is written, and all requests are safe to retry.", "reversible": true } }