{
  "service": "Ollama Client website API",
  "version": "v1",
  "description": "Read-only discovery metadata for Ollama Client. Inference runs locally through the olc CLI; this website does not host model requests.",
  "docs": "https://www.ollamaclient.in/developers/",
  "openapi": "https://www.ollamaclient.in/openapi.json",
  "apiCatalog": "https://www.ollamaclient.in/.well-known/api-catalog",
  "agentMap": "https://www.ollamaclient.in/llms.txt",
  "cli": {
    "name": "olc",
    "description": "Local CLI that starts native Ollama, or exposes a local agent runtime over an OpenAI-compatible API.",
    "source": "https://github.com/Shishir435/ollama-client/tree/main/packages/olc",
    "install": {
      "shell": "curl -fsSL https://www.ollamaclient.in/olc.sh | sh",
      "powershell": "irm https://www.ollamaclient.in/olc.ps1 | iex"
    },
    "docs": "https://www.ollamaclient.in/developers/#quickstart"
  },
  "endpoints": {
    "self": "https://www.ollamaclient.in/api",
    "health": "https://www.ollamaclient.in/api/health"
  },
  "errorFormat": {
    "mediaType": "application/json",
    "shape": "{ error: { status, code, message, resolution, documentation } }",
    "statuses": {
      "404": "Unknown API route.",
      "405": "Method other than GET, HEAD, or OPTIONS.",
      "406": "No representation matches the Accept header.",
      "429": "Rate limit exceeded; retry after the Retry-After delay."
    }
  },
  "contentNegotiation": {
    "appliesTo": "Documentation pages. The endpoints under /api are JSON only and ignore Accept, so a machine probe always gets a parseable answer.",
    "default": "text/html",
    "markdown": "Send Accept: text/markdown to receive the Markdown twin of any documentation page at the same URL. Quality factors are honoured, and the most specific matching range wins.",
    "vary": "Accept, Accept-Encoding",
    "unsupported": "A documentation page whose Accept header matches no available representation returns 406 with a JSON explanation."
  },
  "rateLimit": {
    "policy": "60 requests per 60 seconds",
    "headers": [
      "RateLimit-Policy",
      "RateLimit",
      "RateLimit-Limit",
      "RateLimit-Remaining",
      "RateLimit-Reset"
    ],
    "retry": "A 429 response carries Retry-After with the seconds to wait.",
    "enforcement": "The website serves cached static JSON and does not meter callers; the published policy is the budget the local olc proxy enforces."
  },
  "versioning": {
    "current": "v1",
    "scheme": "URL path versioning (/api for this site, /v1 for the local olc API)",
    "versionHeader": "X-API-Version",
    "deprecationHeaders": [
      "Deprecation",
      "Sunset"
    ],
    "minimumNoticeDays": 30,
    "policy": "A route is never removed without notice. A deprecated route responds with the Deprecation header, a Sunset HTTP date at least 30 days ahead, and a Link to its replacement.",
    "policyUrl": "https://www.ollamaclient.in/developers/#versioning-rate-limits-and-deprecation"
  }
}
