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

# List chains

> Returns the chains the indexer covers, with their ID and name.



## OpenAPI

````yaml /api-reference/openapi.yaml post /v1/IndexerGateway/GetChains
openapi: 3.0.3
info:
  title: Polygon OMS Public API
  version: v26.10.20-0001
  description: >-
    Unified API for moving money between crypto and fiat. Three ways to move
    money: Transactions (instant, wallet or card funded, including Cash-In for
    in-person cash deposits), Deposit Addresses (reusable crypto deposit
    configurations), and Virtual Accounts (dedicated bank accounts that
    auto-convert fiat to crypto). Standard transactions follow a two-step flow:
    create a Quote (pricing), then create a Transaction (execution). Cash-in
    codes generate a one-time deposit code for in-person cash deposits at retail
    locations.
  contact:
    name: Polygon OMS
    url: https://oms.polygon.technology
servers:
  - url: https://sandbox-api.polygon.technology/v0.13
    description: Sandbox
  - url: https://api.polygon.technology/v0.13
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Auth
    description: Authentication via OMS API key and secret
  - name: Customers
    description: Customer management and KYC
  - name: Customer
  - name: Wallet
  - name: Quote
  - name: Transaction
  - name: Transfer
  - name: CashIns
  - name: CashLocation
  - name: Sandbox
  - name: VirtualAccount
  - name: Counterparty
  - name: ExternalAccount
  - name: Reference
  - name: DepositAddress
  - name: Indexer
    description: >-
      Read token balances, prices, and transaction history across EVM networks,
      Solana, and Tron. Indexer methods are webRPC calls: each is a `POST` with
      a JSON body, served at `/v1/{Service}/{Method}` on the API host rather
      than under the `/v0.13` base path. Authenticate with a publishable key in
      the `Api-Key` header, or with a bearer token from `POST /auth/token`.
paths:
  /v1/IndexerGateway/GetChains:
    servers:
      - url: https://sandbox-api.polygon.technology
        description: Sandbox
      - url: https://api.polygon.technology
        description: Production
    post:
      tags:
        - Indexer
      summary: List chains
      description: Returns the chains the indexer covers, with their ID and name.
      operationId: IndexerGateway-GetChains
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IndexerGateway_GetChains_Request'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IndexerGateway_GetChains_Response'
        4XX:
          description: Client error
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/ErrorWebrpcEndpoint'
                  - $ref: '#/components/schemas/ErrorWebrpcRequestFailed'
                  - $ref: '#/components/schemas/ErrorWebrpcBadRoute'
                  - $ref: '#/components/schemas/ErrorWebrpcBadMethod'
                  - $ref: '#/components/schemas/ErrorWebrpcBadRequest'
                  - $ref: '#/components/schemas/ErrorWebrpcClientAborted'
                  - $ref: '#/components/schemas/ErrorWebrpcStreamLost'
                  - $ref: '#/components/schemas/ErrorAborted'
                  - $ref: '#/components/schemas/ErrorAccessKeyMismatch'
                  - $ref: '#/components/schemas/ErrorAccessKeyNotFound'
                  - $ref: '#/components/schemas/ErrorAtLeastOneKey'
                  - $ref: '#/components/schemas/ErrorGeoblocked'
                  - $ref: '#/components/schemas/ErrorInvalidArgument'
                  - $ref: '#/components/schemas/ErrorInvalidOrigin'
                  - $ref: '#/components/schemas/ErrorInvalidService'
                  - $ref: '#/components/schemas/ErrorMaxAccessKeys'
                  - $ref: '#/components/schemas/ErrorMetadataCallFailed'
                  - $ref: '#/components/schemas/ErrorMethodNotFound'
                  - $ref: '#/components/schemas/ErrorNoDefaultKey'
                  - $ref: '#/components/schemas/ErrorNotFound'
                  - $ref: '#/components/schemas/ErrorPermissionDenied'
                  - $ref: '#/components/schemas/ErrorProjectNotFound'
                  - $ref: '#/components/schemas/ErrorQueryFailed'
                  - $ref: '#/components/schemas/ErrorQuotaExceeded'
                  - $ref: '#/components/schemas/ErrorRateLimit'
                  - $ref: '#/components/schemas/ErrorRateLimited'
                  - $ref: '#/components/schemas/ErrorRequestConflict'
                  - $ref: '#/components/schemas/ErrorResourceExhausted'
                  - $ref: '#/components/schemas/ErrorSessionExpired'
                  - $ref: '#/components/schemas/ErrorTimeout'
                  - $ref: '#/components/schemas/ErrorUnauthorized'
                  - $ref: '#/components/schemas/ErrorUnauthorizedUser'
                  - $ref: '#/components/schemas/ErrorUnavailable'
        5XX:
          description: Server error
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/ErrorWebrpcBadResponse'
                  - $ref: '#/components/schemas/ErrorWebrpcServerPanic'
                  - $ref: '#/components/schemas/ErrorWebrpcInternalError'
      security:
        - PublishableKey: []
        - BearerAuth: []
components:
  schemas:
    IndexerGateway_GetChains_Request:
      type: object
      properties:
        networkType:
          $ref: '#/components/schemas/NetworkType'
    IndexerGateway_GetChains_Response:
      type: object
      properties:
        chains:
          description: '[]ChainInfo'
          type: array
          items:
            $ref: '#/components/schemas/ChainInfo'
    ErrorWebrpcEndpoint:
      type: object
      properties:
        error:
          type: string
          example: WebrpcEndpoint
        code:
          type: number
          example: 0
        msg:
          type: string
          example: endpoint error
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcRequestFailed:
      type: object
      properties:
        error:
          type: string
          example: WebrpcRequestFailed
        code:
          type: number
          example: -1
        msg:
          type: string
          example: request failed
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcBadRoute:
      type: object
      properties:
        error:
          type: string
          example: WebrpcBadRoute
        code:
          type: number
          example: -2
        msg:
          type: string
          example: bad route
        cause:
          type: string
        status:
          type: number
          example: 404
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcBadMethod:
      type: object
      properties:
        error:
          type: string
          example: WebrpcBadMethod
        code:
          type: number
          example: -3
        msg:
          type: string
          example: bad method
        cause:
          type: string
        status:
          type: number
          example: 405
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcBadRequest:
      type: object
      properties:
        error:
          type: string
          example: WebrpcBadRequest
        code:
          type: number
          example: -4
        msg:
          type: string
          example: bad request
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcClientAborted:
      type: object
      properties:
        error:
          type: string
          example: WebrpcClientAborted
        code:
          type: number
          example: -8
        msg:
          type: string
          example: request aborted by client
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcStreamLost:
      type: object
      properties:
        error:
          type: string
          example: WebrpcStreamLost
        code:
          type: number
          example: -9
        msg:
          type: string
          example: stream lost
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorAborted:
      type: object
      properties:
        error:
          type: string
          example: Aborted
        code:
          type: number
          example: 1005
        msg:
          type: string
          example: Request aborted
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorAccessKeyMismatch:
      type: object
      properties:
        error:
          type: string
          example: AccessKeyMismatch
        code:
          type: number
          example: 1102
        msg:
          type: string
          example: Access key mismatch
        cause:
          type: string
        status:
          type: number
          example: 409
      required:
        - error
        - code
        - msg
        - status
    ErrorAccessKeyNotFound:
      type: object
      properties:
        error:
          type: string
          example: AccessKeyNotFound
        code:
          type: number
          example: 1101
        msg:
          type: string
          example: Access key not found
        cause:
          type: string
        status:
          type: number
          example: 401
      required:
        - error
        - code
        - msg
        - status
    ErrorAtLeastOneKey:
      type: object
      properties:
        error:
          type: string
          example: AtLeastOneKey
        code:
          type: number
          example: 1302
        msg:
          type: string
          example: You need at least one Access Key
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorGeoblocked:
      type: object
      properties:
        error:
          type: string
          example: Geoblocked
        code:
          type: number
          example: 1006
        msg:
          type: string
          example: Geoblocked region
        cause:
          type: string
        status:
          type: number
          example: 451
      required:
        - error
        - code
        - msg
        - status
    ErrorInvalidArgument:
      type: object
      properties:
        error:
          type: string
          example: InvalidArgument
        code:
          type: number
          example: 2001
        msg:
          type: string
          example: Invalid argument
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorInvalidOrigin:
      type: object
      properties:
        error:
          type: string
          example: InvalidOrigin
        code:
          type: number
          example: 1103
        msg:
          type: string
          example: Invalid origin for Access Key
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorInvalidService:
      type: object
      properties:
        error:
          type: string
          example: InvalidService
        code:
          type: number
          example: 1104
        msg:
          type: string
          example: Service not enabled for Access key
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorMaxAccessKeys:
      type: object
      properties:
        error:
          type: string
          example: MaxAccessKeys
        code:
          type: number
          example: 1301
        msg:
          type: string
          example: Access keys limit reached
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorMetadataCallFailed:
      type: object
      properties:
        error:
          type: string
          example: MetadataCallFailed
        code:
          type: number
          example: 3003
        msg:
          type: string
          example: Metadata service call failed
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorMethodNotFound:
      type: object
      properties:
        error:
          type: string
          example: MethodNotFound
        code:
          type: number
          example: 1003
        msg:
          type: string
          example: Method not found
        cause:
          type: string
        status:
          type: number
          example: 404
      required:
        - error
        - code
        - msg
        - status
    ErrorNoDefaultKey:
      type: object
      properties:
        error:
          type: string
          example: NoDefaultKey
        code:
          type: number
          example: 1300
        msg:
          type: string
          example: No default access key found
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorNotFound:
      type: object
      properties:
        error:
          type: string
          example: NotFound
        code:
          type: number
          example: 3000
        msg:
          type: string
          example: Resource not found
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorPermissionDenied:
      type: object
      properties:
        error:
          type: string
          example: PermissionDenied
        code:
          type: number
          example: 1001
        msg:
          type: string
          example: Permission denied
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorProjectNotFound:
      type: object
      properties:
        error:
          type: string
          example: ProjectNotFound
        code:
          type: number
          example: 1100
        msg:
          type: string
          example: Project not found
        cause:
          type: string
        status:
          type: number
          example: 401
      required:
        - error
        - code
        - msg
        - status
    ErrorQueryFailed:
      type: object
      properties:
        error:
          type: string
          example: QueryFailed
        code:
          type: number
          example: 2003
        msg:
          type: string
          example: Query failed
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorQuotaExceeded:
      type: object
      properties:
        error:
          type: string
          example: QuotaExceeded
        code:
          type: number
          example: 1200
        msg:
          type: string
          example: Quota exceeded
        cause:
          type: string
        status:
          type: number
          example: 429
      required:
        - error
        - code
        - msg
        - status
    ErrorRateLimit:
      type: object
      properties:
        error:
          type: string
          example: RateLimit
        code:
          type: number
          example: 1201
        msg:
          type: string
          example: Rate limit exceeded
        cause:
          type: string
        status:
          type: number
          example: 429
      required:
        - error
        - code
        - msg
        - status
    ErrorRateLimited:
      type: object
      properties:
        error:
          type: string
          example: RateLimited
        code:
          type: number
          example: 1007
        msg:
          type: string
          example: Rate-limited. Please slow down.
        cause:
          type: string
        status:
          type: number
          example: 429
      required:
        - error
        - code
        - msg
        - status
    ErrorRequestConflict:
      type: object
      properties:
        error:
          type: string
          example: RequestConflict
        code:
          type: number
          example: 1004
        msg:
          type: string
          example: Conflict with target resource
        cause:
          type: string
        status:
          type: number
          example: 409
      required:
        - error
        - code
        - msg
        - status
    ErrorResourceExhausted:
      type: object
      properties:
        error:
          type: string
          example: ResourceExhausted
        code:
          type: number
          example: 2004
        msg:
          type: string
          example: Resource exhausted
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorSessionExpired:
      type: object
      properties:
        error:
          type: string
          example: SessionExpired
        code:
          type: number
          example: 1002
        msg:
          type: string
          example: Session expired
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorTimeout:
      type: object
      properties:
        error:
          type: string
          example: Timeout
        code:
          type: number
          example: 1900
        msg:
          type: string
          example: Request timed out
        cause:
          type: string
        status:
          type: number
          example: 408
      required:
        - error
        - code
        - msg
        - status
    ErrorUnauthorized:
      type: object
      properties:
        error:
          type: string
          example: Unauthorized
        code:
          type: number
          example: 1000
        msg:
          type: string
          example: Unauthorized access
        cause:
          type: string
        status:
          type: number
          example: 401
      required:
        - error
        - code
        - msg
        - status
    ErrorUnauthorizedUser:
      type: object
      properties:
        error:
          type: string
          example: UnauthorizedUser
        code:
          type: number
          example: 1105
        msg:
          type: string
          example: Unauthorized user
        cause:
          type: string
        status:
          type: number
          example: 403
      required:
        - error
        - code
        - msg
        - status
    ErrorUnavailable:
      type: object
      properties:
        error:
          type: string
          example: Unavailable
        code:
          type: number
          example: 2002
        msg:
          type: string
          example: Unavailable resource
        cause:
          type: string
        status:
          type: number
          example: 400
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcBadResponse:
      type: object
      properties:
        error:
          type: string
          example: WebrpcBadResponse
        code:
          type: number
          example: -5
        msg:
          type: string
          example: bad response
        cause:
          type: string
        status:
          type: number
          example: 500
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcServerPanic:
      type: object
      properties:
        error:
          type: string
          example: WebrpcServerPanic
        code:
          type: number
          example: -6
        msg:
          type: string
          example: server panic
        cause:
          type: string
        status:
          type: number
          example: 500
      required:
        - error
        - code
        - msg
        - status
    ErrorWebrpcInternalError:
      type: object
      properties:
        error:
          type: string
          example: WebrpcInternalError
        code:
          type: number
          example: -7
        msg:
          type: string
          example: internal error
        cause:
          type: string
        status:
          type: number
          example: 500
      required:
        - error
        - code
        - msg
        - status
    NetworkType:
      description: Represented as uint8 on the server side
      type: string
      enum:
        - MAINNETS
        - TESTNETS
        - ALL
    ChainInfo:
      type: object
      properties:
        chainId:
          type: number
        chainName:
          type: string
      required:
        - chainId
        - chainName
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Token from POST /auth/token
    PublishableKey:
      type: apiKey
      in: header
      name: Api-Key

````