> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bioptimus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Health check

> Returns 200 with the loaded model list when the server is ready. Returns 503 with a status reason while loading or if the GPU/CUDA context is unavailable.



## OpenAPI

````yaml /api-reference/openapi.json get /ping
openapi: 3.1.0
info:
  title: Bioptimus Model Server API
  version: 1.0.0
  description: >-
    REST API exposed by the Bioptimus Model Server. All model endpoints accept
    and return JSON; each request represents a single tile. The default port is
    8080. The server auto-batches concurrent tile requests for GPU efficiency
    (up to 32 tiles per forward pass by default).


    The same request/response schema is used on-premise (path-based endpoints
    below) and on AWS SageMaker (the `/invocations` dispatch endpoint). The
    `bioptimus` Python SDK wraps both — see the SDK guide.


    Authentication: the Model Server REST API currently requires no
    authentication. Secure it via network isolation / private networking. (Auth
    is being clarified.)
servers:
  - url: http://localhost:8080
    description: Local Bioptimus Model Server (replace host/port for your deployment)
security: []
tags:
  - name: Embedding
    description: Tile feature extraction
  - name: Prediction
    description: Spatial gene expression and tissue segmentation
  - name: Service
    description: Health and discovery
paths:
  /ping:
    get:
      tags:
        - Service
      summary: Health check
      description: >-
        Returns 200 with the loaded model list when the server is ready. Returns
        503 with a status reason while loading or if the GPU/CUDA context is
        unavailable.
      operationId: ping
      responses:
        '200':
          description: Healthy — all expected models loaded and GPU available
          content:
            application/json:
              example:
                status: ok
                models:
                  - h1
                  - tissue-seg
        '503':
          description: >-
            Loading or unhealthy. Reasons: still loading; partial_model_load;
            gpu_unavailable; cuda_context_corrupted.
          content:
            application/json:
              examples:
                loading:
                  value:
                    status: loading
                partial_model_load:
                  value:
                    status: unhealthy
                    reason: partial_model_load
                    loaded:
                      - tissue-seg
                    expected: 2
                gpu_unavailable:
                  value:
                    status: unhealthy
                    reason: gpu_unavailable
                cuda_context_corrupted:
                  value:
                    status: unhealthy
                    reason: cuda_context_corrupted

````