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

# Protocols

> List DeFi protocols available on a specific chain.

**Cost:** Free (0 credits)

**Get your API key:** [Dev Portal](https://data.octav.fi)



## OpenAPI

````yaml /openapi.json get /chains/{chainKey}/protocols
openapi: 3.0.0
info:
  title: Octav API
  description: >-
    Comprehensive blockchain data API for portfolio management, transactions,
    and DeFi analytics
  version: 1.0.0
  contact:
    name: Octav Support
    url: https://octav.fi
    email: info@octav.fi
servers:
  - url: https://api.octav.fi/v1
    description: Production API
security:
  - bearerAuth: []
tags:
  - name: Portfolio
    description: Portfolio and holdings endpoints
  - name: Virtual Users
    description: Virtual user management and portfolio endpoints (Pro only)
  - name: Nav
    description: Net Asset Value endpoints
  - name: Wallet
    description: Wallet information endpoints
  - name: Transactions
    description: Transaction history endpoints
  - name: Approvals
    description: Token approval endpoints
  - name: Tokens
    description: Token data endpoints
  - name: Airdrops
    description: Airdrop eligibility endpoints
  - name: Sync
    description: Data synchronization endpoints
  - name: Status
    description: Status check endpoints
  - name: Credits
    description: Credit balance endpoints
  - name: Chains
    description: Blockchain network and protocol endpoints
  - name: Contract Protocol
    description: Resolve a contract address to its DeFi protocol
  - name: Beacon Validators
    description: >-
      Ethereum beacon chain validator endpoints — details, rewards, withdrawals,
      and deposits (mainnet only)
paths:
  /chains/{chainKey}/protocols:
    get:
      tags:
        - Chains
      summary: Protocols
      description: |-
        List DeFi protocols available on a specific chain.

        **Cost:** Free (0 credits)

        **Get your API key:** [Dev Portal](https://data.octav.fi)
      operationId: getProtocols
      parameters:
        - name: chainKey
          in: path
          required: true
          description: >-
            Chain identifier (e.g. "ethereum", "solana", "arbitrum"). Must match
            a chain's `key` field from the Chains endpoint.
          schema:
            type: string
          example: ethereum
        - name: page
          in: query
          required: false
          description: Page number for pagination
          schema:
            type: integer
            minimum: 1
            default: 1
        - name: limit
          in: query
          required: false
          description: Number of protocols per page (1-100)
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 20
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    description: Array of protocol objects
                    items:
                      type: object
                      properties:
                        uuid:
                          type: string
                          description: Unique protocol identifier
                        name:
                          type: string
                          description: Protocol display name (e.g. "Uniswap")
                        key:
                          type: string
                          description: Protocol key (e.g. "uniswap")
                        imgSmall:
                          type: string
                          description: URL to small protocol icon
                        imgLarge:
                          type: string
                          description: URL to large protocol icon
                        isUserProtocol:
                          type: boolean
                          description: True if this is a user-created custom protocol
                  pagination:
                    type: object
                    description: Pagination metadata
                    properties:
                      page:
                        type: integer
                        description: Current page number
                      limit:
                        type: integer
                        description: Items per page
                      hasMore:
                        type: boolean
                        description: Whether more pages are available
        '400':
          description: Validation error — invalid page or limit values
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
        '401':
          description: Unauthorized — invalid or missing Bearer token
        '404':
          description: Chain not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
        '429':
          description: Too Many Requests — rate limit exceeded
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````