{"openapi":"3.1.0","info":{"title":"CareOps Public Information API","version":"1.1.0","description":"Versioned read-only product-information API. URL v1 is the API major version; this document version tracks compatible documentation and implementation changes. No care-access operations are available.","contact":{"name":"CareOps support","email":"operations@getcareops.co.uk","url":"https://getcareops.co.uk/contact"}},"servers":[{"url":"https://getcareops.co.uk"}],"security":[],"tags":[{"name":"CareOps public information","description":"Public software information only; no credentials or personal data are needed."}],"paths":{"/api/v1/public/careops":{"get":{"operationId":"getCareOpsPublicInfoV1","summary":"Read CareOps public product information (v1)","description":"Public, read-only product scope and navigation. No provider capacity, care referrals, bookings or private records. No query parameters. Body is identical on the v1 route and legacy alias. All application-owned failures are Problem Details; upstream hosting failures may differ.","tags":["CareOps public information"],"security":[],"deprecated":false,"parameters":[{"name":"API-Version","in":"header","required":false,"description":"Optional explicit major version; only 1 is supported.","schema":{"type":"string","enum":["1"],"default":"1"}}],"responses":{"200":{"description":"Typed public CareOps information. Each request consumes one instance-local quota unit.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CareOpsPublicInfo"}}}},"400":{"description":"Invalid query parameters or unsupported API-Version header.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"404":{"description":"Unknown route under /api; also applies to a future unsupported URL version.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"405":{"description":"Only GET, HEAD and OPTIONS are supported.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""},"Allow":{"description":"Supported methods.","schema":{"type":"string"},"example":"GET, HEAD, OPTIONS"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"406":{"description":"Client did not accept application/json.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"429":{"description":"The instance-local request quota is exhausted.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""},"Retry-After":{"description":"Minimum delay before retrying, in seconds.","schema":{"type":"integer","minimum":1},"example":30}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"500":{"description":"Unexpected application error; no internal detail or caller input is exposed.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"503":{"description":"Temporary limiter capacity exhaustion; do not retry immediately.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""},"Retry-After":{"description":"Minimum delay before retrying, in seconds.","schema":{"type":"integer","minimum":1},"example":30}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"default":{"description":"Other application-owned error. Hosting-layer network errors are not guaranteed to use this schema.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}}}}},"/api/public/careops":{"get":{"operationId":"getCareOpsPublicInfo","summary":"Read public CareOps information through the supported legacy alias","description":"Public, read-only product scope and navigation. No provider capacity, care referrals, bookings or private records. No query parameters. Body is identical on the v1 route and legacy alias. All application-owned failures are Problem Details; upstream hosting failures may differ.","tags":["CareOps public information"],"security":[],"deprecated":false,"parameters":[{"name":"API-Version","in":"header","required":false,"description":"Optional explicit major version; only 1 is supported.","schema":{"type":"string","enum":["1"],"default":"1"}}],"responses":{"200":{"description":"Typed public CareOps information. Each request consumes one instance-local quota unit.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CareOpsPublicInfo"}}}},"400":{"description":"Invalid query parameters or unsupported API-Version header.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"404":{"description":"Unknown route under /api; also applies to a future unsupported URL version.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"405":{"description":"Only GET, HEAD and OPTIONS are supported.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""},"Allow":{"description":"Supported methods.","schema":{"type":"string"},"example":"GET, HEAD, OPTIONS"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"406":{"description":"Client did not accept application/json.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"429":{"description":"The instance-local request quota is exhausted.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""},"Retry-After":{"description":"Minimum delay before retrying, in seconds.","schema":{"type":"integer","minimum":1},"example":30}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"500":{"description":"Unexpected application error; no internal detail or caller input is exposed.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"503":{"description":"Temporary limiter capacity exhaustion; do not retry immediately.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""},"Retry-After":{"description":"Minimum delay before retrying, in seconds.","schema":{"type":"integer","minimum":1},"example":30}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"default":{"description":"Other application-owned error. Hosting-layer network errors are not guaranteed to use this schema.","headers":{"API-Version":{"description":"Major version of this response. The optional request header must be 1.","schema":{"type":"string"},"example":"1"},"RateLimit-Policy":{"description":"draft-ietf-httpapi-ratelimit-headers-11 structured field, not yet a published RFC. q is request quota; w is window seconds.","schema":{"type":"string"},"example":"\"public-instance\";q=60;w=60"},"RateLimit":{"description":"Remaining requests r and reset delay t in seconds for this client and function instance. Not a global/account quota.","schema":{"type":"string"},"example":"\"public-instance\";r=59;t=45"},"X-RateLimit-Limit":{"description":"Compatibility header: requests per instance window.","schema":{"type":"string"},"example":"60"},"X-RateLimit-Remaining":{"description":"Compatibility header: remaining requests on the serving instance.","schema":{"type":"string"},"example":"59"},"X-RateLimit-Reset":{"description":"Compatibility header: reset time as UNIX seconds, unlike RateLimit t which is a delay.","schema":{"type":"string"},"example":"1790557260"},"X-CareOps-RateLimit-Scope":{"description":"The exact enforcement scope; instances do not share state.","schema":{"type":"string"},"example":"client-function-instance"},"Link":{"description":"Links to version/deprecation policy and the API description; no retirement is announced.","schema":{"type":"string"},"example":"<https://getcareops.co.uk/docs/api#versioning>; rel=\"deprecation\"; type=\"text/html\""}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}}}}}},"components":{"schemas":{"CareOpsPublicInfo":{"type":"object","additionalProperties":false,"required":["release","name","operator","companyNumber","url","contact","description","publicOnly","operationalRelease","clinicalDecisionSystem","capabilities","unavailable","links"],"properties":{"release":{"type":"string","minLength":1},"name":{"type":"string","minLength":1},"operator":{"type":"string","minLength":1},"companyNumber":{"type":"string","pattern":"^[0-9]{8}$"},"url":{"type":"string","format":"uri"},"contact":{"type":"object","additionalProperties":false,"required":["email","contactType"],"properties":{"email":{"type":"string","format":"email"},"contactType":{"type":"string","minLength":1}}},"description":{"type":"string","minLength":1},"publicOnly":{"type":"boolean","const":true},"operationalRelease":{"type":"string","enum":["read-only"]},"clinicalDecisionSystem":{"type":"boolean","const":false},"capabilities":{"type":"array","items":{"type":"string","minLength":1}},"unavailable":{"type":"array","items":{"type":"string","minLength":1}},"links":{"type":"object","additionalProperties":false,"required":["trial","contact","privacy","docs","openapi","mcp","instructions"],"properties":{"trial":{"type":"string","format":"uri"},"contact":{"type":"string","format":"uri"},"privacy":{"type":"string","format":"uri"},"docs":{"type":"string","format":"uri"},"openapi":{"type":"string","format":"uri"},"mcp":{"type":"string","format":"uri"},"instructions":{"type":"string","format":"uri"}}}}},"ProblemDetails":{"type":"object","required":["type","title","status","detail","instance","code","message","resolution","requestId"],"properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string","minLength":1},"status":{"type":"integer","minimum":400,"maximum":599},"detail":{"type":"string","minLength":1},"instance":{"type":"string","format":"uri"},"code":{"type":"string","enum":["NOT_FOUND","METHOD_NOT_ALLOWED","NOT_ACCEPTABLE","INVALID_QUERY","UNSUPPORTED_API_VERSION","RATE_LIMITED","SERVICE_UNAVAILABLE","INTERNAL_ERROR"]},"message":{"type":"string","minLength":1},"resolution":{"type":"string","minLength":1},"requestId":{"type":"string","format":"uuid"}},"additionalProperties":true,"description":"RFC 9457 Problem Details. Clients must ignore unknown extension members; never parse human-readable detail to branch on errors."}}},"externalDocs":{"description":"CareOps API versions, errors, rate limits and CLI","url":"https://getcareops.co.uk/docs/api"},"x-versioning-policy":{"strategy":"URL major version","canonicalPath":"/api/v1/public/careops","legacyAlias":"/api/public/careops","legacySupported":true,"deprecated":false,"sunset":null,"policyUrl":"https://getcareops.co.uk/docs/api#versioning","deprecationHeader":"RFC 9745 Structured Field Date","sunsetHeader":"RFC 8594 HTTP-date; emitted only when a retirement date is announced"}}