> ## 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 an AVS by address

> Returns a single AVS record by address.



## OpenAPI

````yaml get /avs/{address}
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/{address}:
    get:
      tags:
        - AVS
      summary: Retrieve an AVS by address
      description: Returns a single AVS record by address.
      operationId: getAvsByAddress
      parameters:
        - in: path
          name: address
          description: AVS service manager contract address
          schema:
            type: string
            pattern: ^0x[a-fA-F0-9]{40}$
            description: AVS service manager contract address
            example: '0x870679e138bcdf293b7ff14dd44b70fc97e12fc0'
          required: true
        - 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: withRewards
          description: Toggle whether the route should return Avs/Operator rewards APY data
          schema:
            type: string
            enum:
              - 'true'
              - 'false'
            default: 'false'
            description: >-
              Toggle whether the route should return Avs/Operator rewards APY
              data
            example: 'false'
        - 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 AVS record found.
          content:
            application/json:
              schema:
                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
                  rewards:
                    type: object
                    properties:
                      strategyApys:
                        type: array
                        items:
                          type: object
                          properties:
                            strategyAddress:
                              type: string
                              description: The contract address of the restaking strategy
                              example: '0xbeac0eeeeeeeeeeeeeeeeeeeeeeeeeeeeeebeac0'
                            apy:
                              type: number
                              description: >-
                                The cumulative APY from all tokens in this
                                strategy
                              example: 0.1
                            tokens:
                              type: array
                              items:
                                type: object
                                properties:
                                  tokenAddress:
                                    type: string
                                    description: >-
                                      The contract address of the token involved
                                      in the strategy
                                    example: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2'
                                  apy:
                                    type: number
                                    description: >-
                                      The APY contributed by this individual
                                      token
                                    example: 0.1
                                required:
                                  - tokenAddress
                                  - apy
                          required:
                            - strategyAddress
                            - apy
                            - tokens
                        description: >-
                          An array of strategies with their respective APYs and
                          token details
                    required:
                      - strategyApys
                    description: >-
                      The reward details for the AVS, including strategies and
                      APYs
                required:
                  - address
                  - metadataName
                  - metadataDescription
                  - metadataDiscord
                  - metadataLogo
                  - metadataTelegram
                  - metadataWebsite
                  - metadataX
                  - totalStakers
                  - totalOperators
                  - maxApy
                  - createdAtBlock
                  - updatedAtBlock
                  - createdAt
                  - updatedAt
                  - shares
                  - rewards
        '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

````