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

<AgentInstructions>

## Submitting Feedback

If you encounter incorrect, outdated, or confusing documentation on this page, submit feedback:

POST https://developers.fireblocks.com/feedback

```json
{
  "path": "/api-reference/key-link-beta/modify-the-signing-keyid",
  "feedback": "Description of the issue"
}
```

Only submit feedback when you have something specific and actionable to report.

</AgentInstructions>

# Modify the signing keyId

> Allows assigning the signing key to a vault account, if it hasn't been assigned to any other vault accounts yet.



## OpenAPI

````yaml https://docs.fireblocks.com/api/v1/swagger.yaml patch /key_link/signing_keys/{keyId}
openapi: 3.0.0
info:
  title: Fireblocks API
  description: >
    Fireblocks provides a suite of applications to manage digital asset
    operations and a complete development platform to build your business on the
    blockchain.


    - Visit our website for more information: [Fireblocks
    Website](https://fireblocks.com)

    - Visit our developer docs: [Fireblocks
    DevPortal](https://developers.fireblocks.com)
  version: 1.6.2
  contact:
    email: developers@fireblocks.com
servers:
  - url: https://api.fireblocks.io/v1
    description: Fireblocks Production Environment Base URL
  - url: https://sandbox-api.fireblocks.io/v1
    description: Fireblocks Sandbox Environment Base URL
security: []
paths:
  /key_link/signing_keys/{keyId}:
    patch:
      tags:
        - Key Link (Beta)
      summary: Modify the signing keyId
      description: >-
        Allows assigning the signing key to a vault account, if it hasn't been
        assigned to any other vault accounts yet.
      operationId: updateSigningKey
      parameters:
        - name: keyId
          required: true
          in: path
          description: The unique identifier for the signing key provided by Fireblocks
          schema:
            type: string
            example: 46a92767-5f93-4a46-9eed-f012196bb4fc
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ModifySigningKeyDto'
      responses:
        '200':
          description: Modified signing key data
          headers:
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SigningKeyDto'
        default:
          $ref: '#/components/responses/Error'
      x-codeSamples:
        - lang: TypeScript
          source: >-
            const response: Promise<FireblocksResponse<SigningKeyDto>> =
            fireblocks.keyLinkBeta.updateSigningKey(keyLinkBetaApiUpdateSigningKeyRequest);
        - lang: Java
          source: >-
            CompletableFuture<ApiResponse<SigningKeyDto>> response =
            fireblocks.keyLinkBeta().updateSigningKey(modifySigningKeyDto,
            keyId);
        - lang: Python
          source: >-
            response =
            fireblocks.key_link_beta.update_signing_key(modify_signing_key_dto,
            key_id);
components:
  schemas:
    ModifySigningKeyDto:
      type: object
      properties:
        vaultAccountId:
          type: number
          minimum: 0
          example: 123
      required:
        - vaultAccountId
    SigningKeyDto:
      type: object
      properties:
        keyId:
          type: string
          minLength: 36
          maxLength: 36
          example: 46a92767-5f93-4a46-9eed-f012196bb4fc
          description: External signing key id set by Fireblocks.
        signingDeviceKeyId:
          type: string
          maxLength: 256
          example: MyKey1
          description: >-
            The ID, name or label of the key specified on the customer's signing
            device.
        publicKeyPem:
          type: string
          example: '-----BEGIN PUBLIC KEY ... END PUBLIC KEY-----'
          description: PEM encoded public key
        algorithm:
          type: string
          example: ECDSA_SECP256K1
          description: >-
            Algorithm and curve used for the signature. Can be: ECDSA_SECP256K1
            or EDDSA_ED25519
        enabled:
          type: boolean
          example: true
          description: True if the signing key is enabled
        vaultAccountId:
          type: number
          nullable: true
          example: 10
          description: Id of the vault account which this key is linked to
        agentUserId:
          type: string
          minLength: 36
          maxLength: 36
          example: d18847b5-1df6-4c46-8f99-5cce47284529
          description: Id of user that represent agent servers that can sign with the key
        createdAt:
          type: number
          example: 124757537
          description: Creation date (timestamp) in milliseconds.
      required:
        - keyId
        - signingDeviceKeyId
        - publicKeyPem
        - algorithm
        - enabled
        - vaultAccountId
        - agentUserId
        - createdAt
    ErrorSchema:
      type: object
      properties:
        message:
          type: string
        code:
          type: number
  headers:
    X-Request-ID:
      schema:
        type: string
      description: >-
        Unique ID correlated to the API request. Please provide it in any
        support ticket you create or on Github issues related to Fireblocks SDKs
  responses:
    Error:
      description: Error Response
      headers:
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorSchema'

````