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

# Manage dashboard validators

> Add new validators to a specified dashboard or update the group of already-added validators. This endpoint will always add as many validators as possible, even if more validators are provided than allowed by the subscription plan. The response will contain a list of added validators.



## OpenAPI

````yaml .gitbook/assets/API_spec.json POST /api/v2/validator-dashboards/{dashboard_id}/validators
openapi: 3.0.1
info:
  title: beaconcha.in API
  description: >-
    To authenticate your API request beaconcha.in uses API Keys. Set your API
    Key either by:

    - Setting the `Authorization` header in the following format:
    `Authorization: Bearer <your-api-key>`. (recommended)

    - Setting the URL query parameter in the following format:
    `api_key={your_api_key}`.\

    Example:
    `https://beaconcha.in/api/v2/example?field=value&api_key={your_api_key}`
  contact: {}
  version: '2.0'
servers:
  - description: Mainnet
    url: https://beaconcha.in
  - description: Hoodi
    url: https://hoodi.beaconcha.in
security: []
paths:
  /api/v2/validator-dashboards/{dashboard_id}/validators:
    post:
      tags:
        - Validator Dashboard Management
      summary: Manage validators of a dashboard
      description: >-
        Add new validators to a specified dashboard or update the group of
        already-added validators. This endpoint will always add as many
        validators as possible, even if more validators are provided than
        allowed by the subscription plan. The response will contain a list of
        added validators.
      parameters:
        - name: dashboard_id
          in: path
          description: The ID of the dashboard (visible in the dashboard URL).
          required: true
          schema:
            type: integer
      requestBody:
        description: >-
          `group_id`: (optional) Provide a single group id, to which all
          validators get added to. If omitted, the default group will be used.


          To add validators or update their group, only one of the following
          fields can be set:


          `validators`: Provide a list of validator indices or public keys.


          `deposit_address`: (limited to subscription tiers with 'Bulk adding')
          Provide a deposit address from which as many validators as possible
          will be added to the dashboard.


          `withdrawal_credential`: (limited to subscription tiers with 'Bulk
          adding') Provide a withdrawal credential from which as many validators
          as possible will be added to the dashboard.


          `graffiti`: (limited to subscription tiers with 'Bulk adding') Provide
          a graffiti string from which as many validators as possible will be
          added to the dashboard.
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/handlers.PublicPostValidatorDashboardValidators.request
        required: true
      responses:
        '201':
          description: Returns a list of added validators.
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/types.ApiDataResponse-array_types_VDBPostValidatorsData
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/types.ApiErrorResponse'
      security:
        - ApiKeyInHeader: []
components:
  schemas:
    handlers.PublicPostValidatorDashboardValidators.request:
      type: object
      oneOf:
        - type: object
          title: Validators
          properties:
            group_id:
              type: integer
            validators:
              type: array
              items:
                $ref: '#/components/schemas/handlers.intOrString'
          required:
            - validators
          additionalProperties: false
        - type: object
          title: Deposit Address
          properties:
            group_id:
              type: integer
            deposit_address:
              type: string
          required:
            - deposit_address
          additionalProperties: false
        - type: object
          title: Withdrawal Credential
          properties:
            group_id:
              type: integer
            withdrawal_credential:
              type: string
          required:
            - withdrawal_credential
          additionalProperties: false
        - type: object
          title: Graffiti
          properties:
            group_id:
              type: integer
            graffiti:
              type: string
          required:
            - graffiti
          additionalProperties: false
    types.ApiDataResponse-array_types_VDBPostValidatorsData:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/types.VDBPostValidatorsData'
    types.ApiErrorResponse:
      type: object
      properties:
        error:
          type: string
    handlers.intOrString:
      type: object
    types.VDBPostValidatorsData:
      type: object
      properties:
        group_id:
          type: integer
        index:
          type: integer
  securitySchemes:
    ApiKeyInHeader:
      type: apiKey
      description: Use your API key as a Bearer token, e.g. `Bearer <your-api-key>`
      name: Authorization
      in: header

````