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

# Retrieve all AVS

> Returns all AVS records. This endpoint supports pagination.



## OpenAPI

````yaml get /avs
openapi: 3.0.3
info:
  title: EigenExplorer API
  description: EigenExplorer is a community-driven data platform for EigenLayer AVS.
  version: 0.0.1
  license:
    name: MIT
    url: https://spdx.org/licenses/MIT.html
servers:
  - url: https://api.eigenexplorer.com
    description: EigenExplorer Production API
  - url: https://api-holesky.eigenexplorer.com
    description: EigenExplorer Holesky Testnet API
security: []
paths:
  /avs:
    get:
      tags:
        - AVS
      summary: Retrieve all AVS
      description: Returns all AVS records. This endpoint supports pagination.
      operationId: getAllAvs
      parameters:
        - in: query
          name: withTvl
          description: Toggle whether the route should calculate the TVL from shares
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
            default: 'false'
            description: Toggle whether the route should calculate the TVL from shares
            example: 'false'
        - in: query
          name: withCuratedMetadata
          description: Toggle whether the route should send curated metadata
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
            default: 'false'
            description: Toggle whether the route should send curated metadata
            example: 'false'
        - in: query
          name: searchMode
          description: Search mode
          schema:
            type: string
            enum:
              - contains
              - startsWith
            default: contains
            description: Search mode
            example: contains
        - in: query
          name: searchByText
          description: Case-insensitive search query
          schema:
            type: string
            description: Case-insensitive search query
            example: eigen
        - in: query
          name: sortByApy
          description: Sort results in asc or desc order of APY
          schema:
            type: string
            enum:
              - asc
              - desc
            description: Sort results in asc or desc order of APY
            example: desc
        - in: query
          name: sortByTvl
          description: Sort results in asc or desc order of TVL value
          schema:
            type: string
            enum:
              - asc
              - desc
            description: Sort results in asc or desc order of TVL value
            example: desc
        - in: query
          name: sortByTotalStakers
          description: Sort results in asc or desc order of total stakers
          schema:
            type: string
            enum:
              - asc
              - desc
            description: Sort results in asc or desc order of total stakers
            example: desc
        - in: query
          name: sortByTotalOperators
          description: >-
            Sort results in asc or desc order of total AVS (only valid for AVS
            queries)
          schema:
            type: string
            enum:
              - asc
              - desc
            description: >-
              Sort results in asc or desc order of total AVS (only valid for AVS
              queries)
            example: desc
        - in: query
          name: skip
          description: The number of records to skip for pagination
          schema:
            type: string
            default: '0'
            description: The number of records to skip for pagination
            example: 0
        - in: query
          name: take
          description: The number of records to return for pagination
          schema:
            type: string
            default: '12'
            description: The number of records to return for pagination
            example: 12
        - in: header
          name: X-API-Token
          description: API Token for authentication
          schema:
            type: string
            description: API Token for authentication
          required: true
      responses:
        '200':
          description: The list of AVS records.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        address:
                          type: string
                          pattern: ^0x[a-fA-F0-9]{40}$
                          description: AVS service manager contract address
                          example: '0x35f4f28a8d3ff20eed10e087e8f96ea2641e6aa1'
                        metadataName:
                          type: string
                          description: The name of the AVS
                          example: Example AVS
                        metadataDescription:
                          type: string
                          nullable: true
                          description: The description of the AVS
                          example: This is an example AVS
                        metadataDiscord:
                          type: string
                          nullable: true
                          format: uri
                          description: The URL of the AVS's Discord server
                          example: https://discord.com/invite/abcdefghij
                        metadataLogo:
                          type: string
                          nullable: true
                          format: uri
                          description: The URL of the AVS's logo
                        metadataTelegram:
                          type: string
                          nullable: true
                          format: uri
                          description: The URL of the AVS's Telegram channel
                          example: https://t.me/acme
                        metadataWebsite:
                          type: string
                          nullable: true
                          format: uri
                          description: The URL of the AVS's website
                          example: https://acme.com
                        metadataX:
                          type: string
                          nullable: true
                          format: uri
                          description: The URL of the AVS's X
                          example: https://twitter.com/acme
                        totalStakers:
                          type: number
                          description: The total number of stakers staking in the AVS
                          example: 10
                        totalOperators:
                          type: number
                          description: The total number of operators operating the AVS
                          example: 10
                        maxApy:
                          type: string
                          description: The max APY for the AVS across all the strategies
                          example: '1.0'
                        createdAtBlock:
                          type: string
                          description: The block number at which the AVS was created
                          example: '19631203'
                        updatedAtBlock:
                          type: string
                          description: The block number at which the AVS was last updated
                          example: '19631203'
                        createdAt:
                          type: string
                          description: The time stamp at which the AVS was created
                          example: '2024-04-11T08:31:11.000Z'
                        updatedAt:
                          type: string
                          description: The time stamp at which the AVS was last updated
                          example: '2024-04-11T08:31:11.000Z'
                        curatedMetadata:
                          type: object
                          properties:
                            metadataName:
                              type: string
                              description: The name of the AVS
                              example: Example AVS
                            metadataDescription:
                              type: string
                              nullable: true
                              description: The description of the AVS
                              example: This is an example AVS
                            metadataDiscord:
                              type: string
                              nullable: true
                              format: uri
                              description: The URL of the AVS's Discord server
                              example: https://discord.com/invite/abcdefghij
                            metadataLogo:
                              type: string
                              nullable: true
                              format: uri
                              description: The URL of the AVS's logo
                            metadataTelegram:
                              type: string
                              nullable: true
                              format: uri
                              description: The URL of the AVS's Telegram channel
                              example: https://t.me/acme
                            metadataWebsite:
                              type: string
                              nullable: true
                              format: uri
                              description: The URL of the AVS's website
                              example: https://acme.com
                            metadataX:
                              type: string
                              nullable: true
                              format: uri
                              description: The URL of the AVS's X
                              example: https://twitter.com/acme
                            metadataGithub:
                              type: string
                              nullable: true
                              format: uri
                              description: The URL of the AVS's Github
                              example: https://github.com/acme
                            metadataTokenAddress:
                              type: string
                              nullable: true
                              format: uri
                              description: The Token Address of the AVS
                              example: '0x2344c0fe02ccd2b32155ca0ffcb1978a6d96a552'
                            avsAddress:
                              type: string
                              pattern: ^0x[a-fA-F0-9]{40}$
                              description: AVS service manager contract address
                              example: '0x35f4f28a8d3ff20eed10e087e8f96ea2641e6aa1'
                            tags:
                              type: array
                              items:
                                type: string
                              description: Tags to describe the AVS
                              example:
                                - Example tag 1
                                - Example tag 2
                            isVisible:
                              type: boolean
                              description: Indicates if AVS visibility is allowed
                              example: false
                            isVerified:
                              type: boolean
                              description: >-
                                Indicates if the AVS has been verified by the
                                EigenExplorer team
                              example: false
                          required:
                            - metadataName
                            - metadataDescription
                            - metadataDiscord
                            - metadataLogo
                            - metadataTelegram
                            - metadataWebsite
                            - metadataX
                            - metadataGithub
                            - metadataTokenAddress
                            - avsAddress
                            - tags
                            - isVisible
                            - isVerified
                          description: >-
                            To curate visibility and additional information of
                            the AVS 
                          example:
                            avsAddress: '0x2344c0fe02ccd2b32155ca0ffcb1978a6d96a552'
                            metadataName: Example AVS
                            metadataDescription: This is an example AVS
                            metadataDiscord: https://discord.com/invite/example
                            metadataLogo: The URL of the AVS's logo
                            metadataTelegram: The URL of the AVS's Telegram channel
                            metadataWebsite: https://example.com
                            metadataX: https://twitter.com/example
                            metadataGithub: https://github.com/example
                            metadataTokenAddress: '0x2344c0fe02ccd2b32155ca0ffcb1978a6d96a552'
                            tags:
                              - Example tag 1
                              - Example tag 2
                            isVisible: true
                            isVerified: true
                        shares:
                          type: array
                          items:
                            type: object
                            properties:
                              strategyAddress:
                                type: string
                                pattern: ^0x[a-fA-F0-9]{40}$
                                description: The contract address of the restaking strategy
                                example: '0xbeac0eeeeeeeeeeeeeeeeeeeeeeeeeeeeeebeac0'
                              shares:
                                type: string
                                description: The amount of shares held in the strategy
                                example: '1277920000000000000000000'
                            required:
                              - strategyAddress
                              - shares
                          description: The strategy shares held in the AVS
                          example:
                            - strategyAddress: '0x93c4b944d05dfe6df7645a86cd2206016c51564d'
                              shares: '1000000000000000000000'
                            - strategyAddress: '0x54945180db7943c0ed0fee7edab2bd24620256bc'
                              shares: '1000000000000000000000'
                        tvl:
                          type: object
                          properties:
                            tvl:
                              type: number
                              description: >-
                                The combined TVL of all restaking strategies in
                                ETH
                              example: 1000000
                            tvlBeaconChain:
                              type: number
                              description: >-
                                The TVL of Beacon Chain restaking strategy in
                                ETH
                              example: 1000000
                            tvlRestaking:
                              type: number
                              description: >-
                                The combined TVL of all liquid restaking
                                strategies in ETH
                              example: 1000000
                            tvlWETH:
                              type: number
                              description: The TVL of WETH restaking strategy in ETH
                              example: 1000000
                            tvlStrategies:
                              type: object
                              additionalProperties:
                                type: number
                                description: >-
                                  The total value locked (TVL) in the strategy,
                                  denominated in the strategy's native token
                                example: 1000000
                              description: >-
                                The TVL of each individual restaking strategy in
                                its native token
                              example:
                                Eigen: 1000000
                                cbETH: 2000000
                            tvlStrategiesEth:
                              type: object
                              additionalProperties:
                                type: number
                                description: >-
                                  The total value locked (TVL) in the strategy,
                                  denominated in ETH
                                example: 1000000
                              description: >-
                                The TVL of each individual restaking strategy in
                                ETH
                              example:
                                Eigen: 1000000
                                cbETH: 2000000
                          required:
                            - tvl
                            - tvlBeaconChain
                            - tvlRestaking
                            - tvlWETH
                            - tvlStrategies
                            - tvlStrategiesEth
                          description: The total value locked (TVL) in the AVS
                          example:
                            tvl: 1000000
                            tvlBeaconChain: 1000000
                            tvlWETH: 1000000
                            tvlRestaking: 1000000
                            tvlStrategies:
                              Eigen: 1000000
                              cbETH: 2000000
                            tvlStrategiesEth:
                              stETH: 1000000
                              cbETH: 2000000
                      required:
                        - address
                        - metadataName
                        - metadataDescription
                        - metadataDiscord
                        - metadataLogo
                        - metadataTelegram
                        - metadataWebsite
                        - metadataX
                        - totalStakers
                        - totalOperators
                        - maxApy
                        - createdAtBlock
                        - updatedAtBlock
                        - createdAt
                        - updatedAt
                        - shares
                  meta:
                    type: object
                    properties:
                      total:
                        type: number
                        description: Total number of records in the database
                        example: 30
                      skip:
                        type: number
                        description: The number of skiped records for this query
                        example: 0
                      take:
                        type: number
                        description: The number of records returned for this query
                        example: 12
                    required:
                      - total
                      - skip
                      - take
                required:
                  - data
                  - meta
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '422':
          $ref: '#/components/responses/422'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
components:
  responses:
    '400':
      description: >-
        The server cannot or will not process the request due to something that
        is perceived to be a client error (e.g., malformed request syntax,
        invalid request message framing, or deceptive request routing).
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - bad_request
                    description: A short code indicating the error code returned.
                    example: bad_request
                  message:
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.eigenexplorer.com/api-reference/errors#bad_request
                required:
                  - code
                  - message
            required:
              - error
    '401':
      description: >-
        Although the HTTP standard specifies "unauthorized", semantically this
        response means "unauthenticated". That is, the client must authenticate
        itself to get the requested response.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - unauthorized
                    description: A short code indicating the error code returned.
                    example: unauthorized
                  message:
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.eigenexplorer.com/api-reference/errors#unauthorized
                required:
                  - code
                  - message
            required:
              - error
    '403':
      description: >-
        The client does not have access rights to the content; that is, it is
        unauthorized, so the server is refusing to give the requested resource.
        Unlike 401 Unauthorized, the client's identity is known to the server.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - forbidden
                    description: A short code indicating the error code returned.
                    example: forbidden
                  message:
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.eigenexplorer.com/api-reference/errors#forbidden
                required:
                  - code
                  - message
            required:
              - error
    '404':
      description: The server cannot find the requested resource.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - not_found
                    description: A short code indicating the error code returned.
                    example: not_found
                  message:
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.eigenexplorer.com/api-reference/errors#not_found
                required:
                  - code
                  - message
            required:
              - error
    '422':
      description: >-
        The request was well-formed but was unable to be followed due to
        semantic errors.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - unprocessable_entity
                    description: A short code indicating the error code returned.
                    example: unprocessable_entity
                  message:
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.eigenexplorer.com/api-reference/errors#unprocessable_entity
                required:
                  - code
                  - message
            required:
              - error
    '429':
      description: >-
        The user has sent too many requests in a given amount of time ("rate
        limiting")
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - rate_limit_exceeded
                    description: A short code indicating the error code returned.
                    example: rate_limit_exceeded
                  message:
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.eigenexplorer.com/api-reference/errors#rate_limit_exceeded
                required:
                  - code
                  - message
            required:
              - error
    '500':
      description: The server has encountered a situation it does not know how to handle.
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - internal_server_error
                    description: A short code indicating the error code returned.
                    example: internal_server_error
                  message:
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.eigenexplorer.com/api-reference/errors#internal_server_error
                required:
                  - code
                  - message
            required:
              - error

````