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

# Create Redelegate From Request

> Create redelegate from default validator request transaction.



## OpenAPI

````yaml POST /api/v1/cosmos/{network}/staking/redelegate/from
openapi: 3.0.0
info:
  title: Staking API
  description: API used for staking
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.p2p.org/api
security:
  - bearer: []
tags:
  - name: Aptos
    description: Aptos staking operations (stake, unstake, withdraw, claim).
  - name: Celestia
    description: Celestia staking operations (stake, unstake, redelegate, claim).
  - name: Cosmos
    description: Cosmos Hub staking operations (stake, unstake, redelegate, claim).
  - name: EigenLayer
    description: EigenLayer restaking operations.
  - name: Ethereum
    description: Ethereum staking operations (direct, SSV, pooled).
  - name: Hyperliquid
    description: Hyperliquid staking operations.
  - name: Monad
    description: Monad staking operations (delegate, undelegate, withdraw).
  - name: P2P SSV
    description: P2P-managed SSV validator operations (deposit, claim, withdraw).
  - name: Polkadot
    description: Polkadot staking and nomination pool operations.
  - name: Polygon
    description: Polygon staking operations.
  - name: Pooled Staking
    description: Pooled staking vault operations (deposit, unstake, withdraw).
  - name: Sei
    description: Sei staking operations (stake, unstake, redelegate, claim).
  - name: Solana
    description: Solana staking operations (stake, split, merge, deactivate, withdraw).
  - name: SSV
    description: SSV network validator operations.
  - name: Story
    description: Story network staking operations.
  - name: Sui
    description: Sui staking operations.
  - name: TON
    description: TON staking operations (single nominator, whales pool).
  - name: TRON
    description: TRON staking operations (freeze, delegate, vote, withdraw).
  - name: Unified
    description: Unified multi-chain staking interface.
paths:
  /api/v1/cosmos/{network}/staking/redelegate/from:
    post:
      tags:
        - Cosmos
      summary: Create Redelegate From Request
      description: Create redelegate from default validator request transaction.
      operationId: create-cosmos-redelegate-from-transaction
      parameters:
        - name: network
          required: true
          in: path
          description: >-
            <p>Cosmos network:</p><ul><li>`cosmoshub-4` — Cosmos
            mainnet.</li></ul>
          schema:
            enum:
              - cosmoshub-4
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/CosmosRedelegateTransactionStakingCosmosRequest
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/SuccessResponse'
                  - type: object
                    properties:
                      result:
                        $ref: >-
                          #/components/schemas/CosmosRedelegateTransactionStakingCosmosResponse
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ExceptionResponse'
                  - type: object
                    properties:
                      error:
                        oneOf:
                          - $ref: '#/components/schemas/CommonValidationException'
                          - $ref: >-
                              #/components/schemas/CosmosCommonCosmosNetworkIsNotIncludedInListException
                          - $ref: >-
                              #/components/schemas/CosmosSimulationTransactionOnCosmosException
                          - $ref: >-
                              #/components/schemas/CosmosRedelegationTransactionInProcessException
              examples:
                ValidationException:
                  value:
                    error:
                      code: 100101
                      message: >-
                        The data provided is not valid. Please check the request
                        parameters and try again.
                      name: ValidationException
                      type: client
                    result: null
                CommonCosmosNetworkIsNotIncludedInListException:
                  value:
                    error:
                      code: 100101
                      message: >-
                        The request could not be performed because the network
                        provided is not supported. Please specify the network
                        from the list of available ones: undefined.
                      name: CommonCosmosNetworkIsNotIncludedInListException
                      type: client
                    result: null
                SimulationTransactionOnCosmosException:
                  value:
                    error:
                      code: 110113
                      message: >-
                        The request could not be performed because the
                        simulation transaction failed.
                      name: SimulationTransactionOnCosmosException
                      type: client
                    result: null
                RedelegationTransactionInProcessException:
                  value:
                    error:
                      code: 110114
                      message: >-
                        The request could not be performed because the
                        redelegation to this validator is already in progress.
                        Please try again after the redelegation process will be
                        completed.
                      name: RedelegationTransactionInProcessException
                      type: client
                    result: null
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ExceptionResponse'
                  - type: object
                    properties:
                      error:
                        oneOf:
                          - $ref: '#/components/schemas/AuthNoTokenException'
                          - $ref: '#/components/schemas/AuthWrongTokenException'
              examples:
                NoTokenException:
                  value:
                    error:
                      code: 101111
                      message: >-
                        No Bearer token has been provided. To obtain an
                        authentication token, follow the instructions at
                        https://docs.p2p.org/docs/authentication.
                      name: NoTokenException
                      type: authentication
                    result: null
                WrongTokenException:
                  value:
                    error:
                      code: 101109
                      message: >-
                        An invalid Bearer token has been provided. Please
                        specify the correct authentication token.
                      name: WrongTokenException
                      type: authentication
                    result: null
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ExceptionResponse'
                  - type: object
                    properties:
                      error:
                        oneOf:
                          - $ref: >-
                              #/components/schemas/CosmosCreateRedelegateTransactionException
                          - $ref: >-
                              #/components/schemas/NoProvidersConfiguredException
              examples:
                CreateRedelegateTransactionException:
                  value:
                    error:
                      code: 110105
                      message: >-
                        The redelegate request transaction could not be created
                        because the internal server error occurred.
                      name: CreateRedelegateTransactionException
                      type: server
                    result: null
                NoProvidersConfiguredException:
                  value:
                    error:
                      code: 100110
                      message: >-
                        No providers configured for client undefined and network
                        undefined
                      name: NoProvidersConfiguredException
                      type: server
                    result: null
      security:
        - bearer: []
components:
  schemas:
    CosmosRedelegateTransactionStakingCosmosRequest:
      type: object
      properties:
        stashAccountAddress:
          type: string
          description: Delegator account address which keeps tokens.
          pattern: ^cosmos[a-zA-Z0-9]{39}$
        memo:
          type: string
          example: This is your memo message
          description: Arbitrary text data to add to the transactions.
        amount:
          type: number
          format: double
          description: Amount of tokens to stake in ATOM.
        validatorAddress:
          type: string
          description: Validator address to perform the operation with.
          example: cosmosvaloperjj5m7nku1ZlgyUJJ5kH1Rln3bER6eWHAKwKsgC9
          pattern: ^cosmosvaloper[a-zA-Z0-9]{39}$
      required:
        - stashAccountAddress
        - amount
        - validatorAddress
    SuccessResponse:
      type: object
      properties:
        error:
          type: object
          nullable: true
          default: null
          description: Error object. Always null on successful responses.
        result:
          type: object
          description: Response payload containing the requested data.
      description: Standard API success response envelope wrapping the result payload.
      required:
        - error
        - result
    CosmosRedelegateTransactionStakingCosmosResponse:
      type: object
      properties:
        stashAccountAddress:
          type: string
          description: Delegator stash account address which keeps tokens.
          pattern: ^cosmos[a-zA-Z0-9]{39}$
        transactionData:
          description: >-
            List of data fields to be used to construct the staking
            transactions.
          allOf:
            - $ref: '#/components/schemas/CosmosTransactionData'
        createdAt:
          type: string
          format: date-time
          description: Timestamp of the transaction in the ISO 8601 format.
          readOnly: true
        amount:
          type: number
          format: double
          description: Amount of tokens to stake.
        currency:
          type: string
          enum:
            - atom
            - uatom
            - matom
          description: >-
            <p>Currency of the tokens:</p><ul><li>`atom` — Cosmos native staking
            token.</li><li>`uatom` — 1 ATOM = 10⁶ uATOM.</li><li>`matom` — 1
            ATOM = 10³ mATOM.</li></ul>
        sourceValidatorAddress:
          type: string
          description: Redelegate source validator address.
          example: cosmosvaloperjj5m7nku1ZlgyUJJ5kH1Rln3bER6eWHAKwKsgC9
          pattern: ^cosmosvaloper[a-zA-Z0-9]{39}$
        destinationValidatorAddress:
          type: string
          description: Redelegate destination validator address.
          example: cosmosvaloperjj5m7nku1ZlgyUJJ5kH1Rln3bER6eWHAKwKsgC9
          pattern: ^cosmosvaloper[a-zA-Z0-9]{39}$
      required:
        - stashAccountAddress
        - transactionData
        - createdAt
        - amount
        - currency
        - sourceValidatorAddress
        - destinationValidatorAddress
    ExceptionResponse:
      type: object
      properties:
        error:
          type: object
          description: Error object containing exception details. Null on success.
        result:
          type: object
          nullable: true
          default: null
          description: Result payload. Always null on error responses.
        requestId:
          type: string
          description: >-
            Identifier of the request (the `x-request-id` header). Quote this
            value to correlate the response with server logs.
          example: 90c16e9e-6e99-4651-a033-60290356df2f
        timestamp:
          type: string
          format: date-time
          description: ISO 8601 timestamp of when the error response was generated.
          example: '2026-05-20T22:29:03.126Z'
      description: Standard API error response envelope wrapping the exception details.
      required:
        - error
        - result
        - timestamp
    CommonValidationException:
      type: object
      properties:
        type:
          type: string
          default: client
          example: client
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 100101
          example: 100101
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            The data provided is not valid. Please check the request parameters
            and try again.
          example: >-
            The data provided is not valid. Please check the request parameters
            and try again.
          description: Human-readable error message describing what went wrong.
        errors:
          description: Validation error details when applicable.
          type: array
          items:
            $ref: '#/components/schemas/ValidationErrorResponse'
        name:
          type: string
          default: ValidationException
          example: ValidationException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - errors
        - name
    CosmosCommonCosmosNetworkIsNotIncludedInListException:
      type: object
      properties:
        type:
          type: string
          default: client
          example: client
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 115101
          example: 115101
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            The request could not be performed because the network provided is
            not supported. Please specify the network from the list of available
            ones: cosmoshub-4, celestia-mainnet-beta, celestia-mocha-testnet,
            pacific-1, atlantic-2.
          example: >-
            The request could not be performed because the network provided is
            not supported. Please specify the network from the list of available
            ones: cosmoshub-4, celestia-mainnet-beta, celestia-mocha-testnet,
            pacific-1, atlantic-2.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: CommonCosmosNetworkIsNotIncludedInListException
          example: CommonCosmosNetworkIsNotIncludedInListException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    CosmosSimulationTransactionOnCosmosException:
      type: object
      properties:
        type:
          type: string
          default: client
          example: client
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 110113
          example: 110113
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            The request could not be performed because the simulation
            transaction failed.
          example: >-
            The request could not be performed because the simulation
            transaction failed.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: SimulationTransactionOnCosmosException
          example: SimulationTransactionOnCosmosException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    CosmosRedelegationTransactionInProcessException:
      type: object
      properties:
        type:
          type: string
          default: client
          example: client
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 110114
          example: 110114
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            The request could not be performed because the redelegation to this
            validator is already in progress. Please try again after the
            redelegation process will be completed.
          example: >-
            The request could not be performed because the redelegation to this
            validator is already in progress. Please try again after the
            redelegation process will be completed.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: RedelegationTransactionInProcessException
          example: RedelegationTransactionInProcessException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    AuthNoTokenException:
      type: object
      properties:
        type:
          type: string
          default: authentication
          example: authentication
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 101111
          example: 101111
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            No Bearer token has been provided. To obtain an authentication
            token, follow the instructions at
            https://docs.p2p.org/docs/authentication.
          example: >-
            No Bearer token has been provided. To obtain an authentication
            token, follow the instructions at
            https://docs.p2p.org/docs/authentication.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: NoTokenException
          example: NoTokenException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    AuthWrongTokenException:
      type: object
      properties:
        type:
          type: string
          default: authentication
          example: authentication
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 101109
          example: 101109
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            An invalid Bearer token has been provided. Please specify the
            correct authentication token.
          example: >-
            An invalid Bearer token has been provided. Please specify the
            correct authentication token.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: WrongTokenException
          example: WrongTokenException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    CosmosCreateRedelegateTransactionException:
      type: object
      properties:
        type:
          type: string
          default: server
          example: server
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 110105
          example: 110105
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            The redelegate request transaction could not be created because the
            internal server error occurred.
          example: >-
            The redelegate request transaction could not be created because the
            internal server error occurred.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: CreateRedelegateTransactionException
          example: CreateRedelegateTransactionException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    NoProvidersConfiguredException:
      type: object
      properties:
        type:
          type: string
          default: server
          example: server
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 100110
          example: 100110
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: No providers configured for client %s and network %s
          example: No providers configured for client COSMOS and network cosmoshub-4
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: NoProvidersConfiguredException
          example: NoProvidersConfiguredException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    CosmosTransactionData:
      type: object
      properties:
        messages:
          description: Array of transaction messages to be included.
          type: array
          items:
            $ref: '#/components/schemas/CosmosMessage'
        fee:
          description: Amount of fee charged for the transaction.
          allOf:
            - $ref: '#/components/schemas/CosmosTransactionFee'
        memo:
          type: string
          description: Arbitrary text data to add to the transactions.
        encodedBody:
          type: string
          description: Processable transaction data encoded in the hexadecimal format.
        encodedAuthInfo:
          type: string
          description: >-
            Authorization data, including fee, encoded in the hexadecimal
            format.
      required:
        - messages
        - fee
        - encodedBody
        - encodedAuthInfo
    ValidationErrorResponse:
      type: object
      properties:
        property:
          type: string
          description: Name of the property that failed validation.
        constraints:
          type: object
          additionalProperties:
            type: string
          description: Validation constraint details describing what was expected.
      required:
        - property
        - constraints
    CosmosMessage:
      type: object
      properties:
        typeUrl:
          type: string
          enum:
            - /cosmos.staking.v1beta1.MsgDelegate
            - /cosmos.staking.v1beta1.MsgUndelegate
            - /cosmos.staking.v1beta1.MsgBeginRedelegate
            - /cosmos.distribution.v1beta1.MsgWithdrawDelegatorReward
            - /cosmos.crypto.secp256k1.PubKey
          example: /cosmos.staking.v1beta1.Tx
          description: Cosmos-based network operation type.
        value:
          oneOf:
            - $ref: '#/components/schemas/CosmosMsgDelegate'
            - $ref: '#/components/schemas/CosmosMsgUndelegate'
            - $ref: '#/components/schemas/CosmosMsgBeginRedelegate'
            - $ref: '#/components/schemas/CosmosMsgWithdrawDelegatorReward'
          example:
            delegatorAddress: string
          description: Encoded message value.
      required:
        - typeUrl
        - value
    CosmosTransactionFee:
      type: object
      properties:
        amount:
          description: Fee amounts for the transaction.
          type: array
          items:
            $ref: '#/components/schemas/CosmosAmount'
        gas:
          type: string
          description: Amount of gas spent for the transaction.
      required:
        - amount
        - gas
    CosmosMsgDelegate:
      type: object
      properties:
        delegatorAddress:
          type: string
          description: Delegator address.
          pattern: ^celestia[a-zA-Z0-9]{39}$
        validatorAddress:
          type: string
          description: Validator address.
          pattern: ^celestiavaloper[a-zA-Z0-9]{39}$
        amount:
          $ref: '#/components/schemas/CosmosCoin'
      required:
        - delegatorAddress
        - validatorAddress
    CosmosMsgUndelegate:
      type: object
      properties:
        delegatorAddress:
          type: string
          description: Delegator address.
          pattern: ^celestia[a-zA-Z0-9]{39}$
        validatorAddress:
          type: string
          description: Validator address.
          pattern: ^celestiavaloper[a-zA-Z0-9]{39}$
        amount:
          $ref: '#/components/schemas/CosmosCoin'
      required:
        - delegatorAddress
        - validatorAddress
    CosmosMsgBeginRedelegate:
      type: object
      properties:
        delegatorAddress:
          type: string
          description: Delegator address.
          pattern: ^celestia[a-zA-Z0-9]{39}$
        validatorSrcAddress:
          type: string
          description: Source validator address.
          pattern: ^celestiavaloper[a-zA-Z0-9]{39}$
        validatorDstAddress:
          type: string
          description: Destination validator address.
          pattern: ^celestiavaloper[a-zA-Z0-9]{39}$
        amount:
          $ref: '#/components/schemas/CosmosCoin'
      required:
        - delegatorAddress
        - validatorSrcAddress
        - validatorDstAddress
    CosmosMsgWithdrawDelegatorReward:
      type: object
      properties:
        delegatorAddress:
          type: string
          description: Delegator address.
          pattern: ^celestia[a-zA-Z0-9]{39}$
        validatorAddress:
          type: string
          description: Validator address.
          pattern: ^celestiavaloper[a-zA-Z0-9]{39}$
      required:
        - delegatorAddress
        - validatorAddress
    CosmosAmount:
      type: object
      properties:
        denom:
          type: string
          enum:
            - tia
            - utia
            - mtia
          description: >-
            <p>Currency of the tokens:</p><ul><li>`tia` — Celestia native
            staking token.</li><li>`utia` — 1 TIA = 10⁶ uTIA.</li><li>`mtia` — 1
            TIA = 10³ mTIA.</li></ul>
        amount:
          type: string
          description: Amount of tokens.
      required:
        - denom
        - amount
    CosmosCoin:
      type: object
      properties:
        denom:
          type: string
          description: Currency of the tokens.
        amount:
          type: string
          description: Amount of tokens.
      required:
        - denom
        - amount
  responses:
    TooManyRequests:
      description: >-
        Too Many Requests — the client exceeded its rate limit. The response
        advertises when to retry and the active quota via headers.
      headers:
        Retry-After:
          description: Number of seconds to wait before retrying the request.
          schema:
            type: integer
            example: 60
        RateLimit-Limit:
          description: >-
            The request quota (maximum number of requests) for the most
            restrictive applicable window.
          schema:
            type: integer
            example: 120
        RateLimit-Reset:
          description: >-
            Number of seconds until the rate-limit window resets and requests
            are accepted again.
          schema:
            type: integer
            example: 60
        RateLimit-Policy:
          description: >-
            The active rate-limit policy as `<limit>;w=<window-seconds>`,
            comma-separated when multiple windows apply.
          schema:
            type: string
            example: 120;w=60
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: integer
                  name:
                    type: string
                    example: ThrottlerException
                  message:
                    type: string
                    example: ThrottlerException
                  errors:
                    type: array
                    nullable: true
                    items:
                      type: object
              result:
                type: object
                nullable: true
                example: null
              requestId:
                type: string
                description: >-
                  Identifier of the request (the `x-request-id` header). Quote
                  this value to correlate the response with server logs.
                example: 90c16e9e-6e99-4651-a033-60290356df2f
              timestamp:
                type: string
                format: date-time
                description: ISO 8601 timestamp of when the error response was generated.
                example: '2026-05-20T22:29:03.126Z'
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

## Related topics

- [Create Redelegate From Request](/reference/create-sei-redelegate-from-transaction.md)
- [Create Redelegate Request](/reference/polygon-staking-redelegate.md)
- [Create Redelegate To Request](/reference/create-sei-redelegate-to-transaction.md)
