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

# Ping

> Health check endpoint

Simple health check endpoint to verify the API is operational. Does not require authentication.

<ResponseExample>
  ```json 200 theme={"system"}
  {
    "data": {
      "status": "ok",
      "version": "1.0.0",
      "timestamp": 1711234588
    },
    "error": null,
    "meta": {
      "requestId": "d0a1b2c3-d4e5-6789-3456-890123456789",
      "timestamp": 1711234588,
      "rateLimit": {
        "limit": 2000,
        "remaining": 1970,
        "reset": 1711234627
      }
    }
  }
  ```
</ResponseExample>

<CodeGroup>
  ```typescript TypeScript theme={"system"}
  const ping = await client.ping();
  console.log("API status:", ping.status);
  console.log("Version:", ping.version);
  ```

  ```bash cURL theme={"system"}
  curl https://api.hypermid.io/v1/ping
  ```

  ```go Go theme={"system"}
  resp, _ := http.Get("https://api.hypermid.io/v1/ping")
  ```
</CodeGroup>

<Tip>
  Use this endpoint for uptime monitoring. It does not count against your rate limit when called without an API key.
</Tip>


## OpenAPI

````yaml GET /v1/ping
openapi: 3.0.3
info:
  title: Hypermid Partner API
  version: 1.0.0
  description: >-
    Cross-chain swap aggregator API. Supports 30+ EVM chains, Solana, Bitcoin,
    Sui, and Near Intents chains (NEAR, TON, Tron, XRP, etc.).


    ## Authentication

    Pass your API key via the `X-API-Key` header. Public endpoints work without
    a key (anonymous tier). Partner endpoints (`/v1/partner/*`) require a valid
    key.


    ## Rate Limits

    - **Anonymous**: 30 requests/minute (per IP)

    - **Partner (authenticated)**: 100 requests/minute (per API key)


    These limits are designed for human-driven widget usage and mirror our
    upstream aggregator (LiFi) limits to prevent any single user from exhausting
    shared quota.


    Rate limit info is returned in `meta.rateLimit` on every response.


    ## Response Envelope

    All responses follow the shape:

    ```json

    { "data": <T | null>, "error": <{ code, message, details? } | null>, "meta":
    { "requestId", "timestamp", "rateLimit?" } }

    ```
  contact:
    name: Hypermid
    url: https://hypermid.io
servers:
  - url: https://api.hypermid.io
    description: Production
security:
  - ApiKeyAuth: []
  - {}
tags:
  - name: Swap
    description: Cross-chain swap quoting, routing, status, and reference data
  - name: Execute
    description: Transaction execution and deposit management for Near Intents swaps
  - name: On-Ramp
    description: Fiat-to-crypto on-ramp via RampNow
  - name: Partner
    description: Partner account, analytics, and webhook management (requires X-API-Key)
  - name: Tracking
    description: Swap event tracking for partner attribution
  - name: System
    description: Health check and API metadata
paths:
  /v1/ping:
    get:
      tags:
        - System
      summary: Health check
      description: Returns a simple pong response to verify the API is reachable.
      operationId: ping
      responses:
        '200':
          description: API is healthy
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: ok
                  version:
                    type: string
                    example: v1
                  uptime:
                    type: integer
                    description: Server uptime in seconds
                  timestamp:
                    type: integer
                    description: Unix epoch seconds
                  providers:
                    type: object
                    properties:
                      lifi:
                        type: string
                        enum:
                          - active
                      nearIntents:
                        type: string
                        enum:
                          - active
                      rampnow:
                        type: string
                        enum:
                          - active
                          - not_configured
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: >-
        Partner API key. Optional for public endpoints, required for
        /v1/partner/*.

````