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

# Service status

> Public liveness endpoint; no API key is required.

Check whether the Ninetile solver is ready. This endpoint does not require an API key or create a billable solve.


## OpenAPI

````yaml https://ninetile.io/openapi.json GET /status
openapi: 3.1.0
info:
  title: Ninetile API
  version: 1.0.0
  description: >-
    Native Ninetile JSON API. Solve hCaptcha challenges, retrieve solve status,
    report token outcomes, inspect account usage, and recognize hCaptcha image
    challenges. Successful solves and recognitions are charged to the account's
    prepaid USD balance.
servers:
  - url: https://api.ninetile.io/v1
    description: Primary API
  - url: https://api.radiumstore.org/v1
    description: Alternate API host
security:
  - BearerAuth: []
  - ApiKeyHeader: []
tags:
  - name: Solves
    description: Create, inspect, cancel, and report hCaptcha token solves.
  - name: Feedback
    description: Report verdicts for completed solves.
  - name: Account
    description: Inspect account balance, limits, and daily usage.
  - name: Recognition
    description: Recognize hCaptcha image challenges for clients running their own browser.
  - name: Status
    description: Public service liveness.
paths:
  /status:
    get:
      tags:
        - Status
      summary: Check API and solver status
      description: Public liveness endpoint; no API key is required.
      operationId: getStatus
      responses:
        '200':
          description: Status retrieved.
          headers:
            X-Request-Id:
              $ref: '#/components/headers/RequestId'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
              example:
                object: status
                status: ok
        '500':
          $ref: '#/components/responses/InternalError'
      security: []
components:
  headers:
    RequestId:
      description: Request identifier for support inquiries.
      schema:
        type: string
        format: uuid
  schemas:
    Status:
      type: object
      required:
        - object
        - status
      properties:
        object:
          const: status
        status:
          type: string
          enum:
            - ok
            - degraded
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
            - param
            - request_id
          properties:
            code:
              type: string
              enum:
                - invalid_request
                - unauthorized
                - insufficient_credits
                - key_credit_limit_exceeded
                - account_locked
                - forbidden
                - not_eligible
                - not_found
                - conflict
                - payload_too_large
                - unsupported_media_type
                - expired_window
                - recognition_failed
                - validation_error
                - concurrency_limit_exceeded
                - proxy_unavailable
                - rate_capped
                - rate_limited
                - sitekey_rate_limited
                - internal_error
                - maintenance
                - capacity_exhausted
                - proxy_pool_depleted
            message:
              type: string
            param:
              type:
                - string
                - 'null'
            request_id:
              type: string
              format: uuid
  responses:
    InternalError:
      description: Unexpected server error (`internal_error`).
      headers:
        X-Request-Id:
          $ref: '#/components/headers/RequestId'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Ninetile API key, sent as `Authorization: Bearer <key>`. Keys are issued
        in the dashboard.
    ApiKeyHeader:
      type: apiKey
      in: header
      name: x-api-key
      description: Alternative to the Authorization Bearer header.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.