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

# Rename workflow component

> Updates only the component's display name. Does **not** create a new version and does **not** propagate to embedded instances.

For changes to `component_data` (the actual node/edge structure), use `PUT /workflow-components/{component_id}` instead.



## OpenAPI

````yaml workflow-api/workflow-api.yaml patch /workflow-components/{component_id}
openapi: 3.0.0
info:
  title: Workflow API
  version: 1.0.0
  description: API for managing workflows and their metadata
servers:
  - url: https://api.cloudcruise.com
    description: CloudCruise Platform Production API Server
security:
  - AuthScheme: []
paths:
  /workflow-components/{component_id}:
    patch:
      summary: Rename workflow component
      description: >-
        Updates only the component's display name. Does **not** create a new
        version and does **not** propagate to embedded instances.


        For changes to `component_data` (the actual node/edge structure), use
        `PUT /workflow-components/{component_id}` instead.
      operationId: renameWorkflowComponent
      parameters:
        - name: component_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: The ID of the workflow component
        - name: cc-key
          in: header
          required: false
          schema:
            type: string
          description: CloudCruise API key for authentication
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkflowComponentRenamePayload'
      responses:
        '200':
          description: Component renamed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowComponentFull'
        '400':
          description: >-
            Bad request - `component_id` is not a valid UUID or `name` is
            missing/too long
        '401':
          description: Unauthorized - Invalid or missing authentication
        '404':
          description: Component not found
        '500':
          description: Internal server error
components:
  schemas:
    WorkflowComponentRenamePayload:
      type: object
      description: >-
        Payload for renaming a workflow component. Does not create a new
        version.
      properties:
        name:
          type: string
          maxLength: 100
          description: New display name for the component
      required:
        - name
    WorkflowComponentFull:
      type: object
      description: >-
        Full workflow component including its latest version's `component_data`.

        Returned by `GET /workflow-components/{component_id}` and the create
        endpoint.
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the component
        workspace_id:
          type: string
          format: uuid
          description: ID of the workspace this component belongs to
        name:
          type: string
          description: Display name of the component
        created_by:
          type: string
          format: uuid
          description: ID of the user who created the component
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        component_data:
          $ref: '#/components/schemas/ComponentData'
        version_number:
          type: integer
          minimum: 1
          description: The latest version number of this component
        version_note:
          type: string
          nullable: true
          description: Optional note describing the latest version's changes
      required:
        - id
        - workspace_id
        - name
        - component_data
        - version_number
        - created_at
        - updated_at
    ComponentData:
      type: object
      description: >-
        Structural payload for a workflow component — the nodes, edges, and
        vault schema that compose it. Mirrors the shape used by the workflow
        visualizer.
      properties:
        nodes:
          type: array
          description: >-
            Array of component nodes, each wrapping a workflow node plus its
            canvas position.
          items:
            type: object
            properties:
              workflowNode:
                $ref: '#/components/schemas/Node'
              position:
                type: object
                properties:
                  x:
                    type: number
                  'y':
                    type: number
            required:
              - workflowNode
              - position
        workflowEdges:
          type: object
          description: >-
            Map of edges between component nodes. Keys are source node ids;
            values define outgoing connections (same shape as workflow edges).
          additionalProperties:
            $ref: '#/components/schemas/Edge'
        reactFlowEdges:
          type: array
          description: ReactFlow-specific edge metadata for the visualizer (handles, etc.).
          items:
            type: object
            properties:
              sourceId:
                type: string
              targetId:
                type: string
              sourceHandle:
                type: string
                nullable: true
              targetHandle:
                type: string
                nullable: true
            required:
              - sourceId
              - targetId
        vault_schema:
          type: object
          nullable: true
          description: >-
            Optional schema defining vault credentials referenced by nodes in
            this component. Merged into the target workflow's `vault_schema`
            during propagation (target entries always take precedence).
          additionalProperties:
            type: object
      required:
        - nodes
        - workflowEdges
        - reactFlowEdges
    Node:
      type: object
      description: >-
        A workflow step node. Each node has an `action` type and `parameters`
        specific to that action.

        Common action types include: START, END, CLICK, INPUT_TEXT,
        INPUT_SELECT, NAVIGATE,

        EXTRACT_DATAMODEL, BOOL_CONDITION, LOOP, DELAY, SCREENSHOT, SCROLL,
        TAB_MANAGEMENT,

        FILE_DOWNLOAD, FILE_UPLOAD, TFA, USER_INTERACTION, APP_ACTION,
        EXTRACT_NETWORK,

        TRANSFORM.
      properties:
        id:
          type: string
          description: Unique identifier for the node within the workflow
        name:
          type: string
          description: Display name of the node
        action:
          type: string
          description: The action type this node performs
          enum:
            - START
            - END
            - CLICK
            - INPUT_TEXT
            - INPUT_SELECT
            - NAVIGATE
            - EXTRACT_DATAMODEL
            - BOOL_CONDITION
            - LOOP
            - DELAY
            - SCREENSHOT
            - SCROLL
            - TAB_MANAGEMENT
            - FILE_DOWNLOAD
            - FILE_UPLOAD
            - TFA
            - USER_INTERACTION
            - APP_ACTION
            - EXTRACT_NETWORK
            - TRANSFORM
        parameters:
          type: object
          description: >-
            Action-specific parameters. The shape of this object depends on the
            `action` type.

            Refer to the workflow builder or an existing workflow's GET response
            for the parameter

            structure of each action type.
        description:
          type: string
          description: Optional description of what this node does
      required:
        - id
        - name
        - action
        - parameters
    Edge:
      type: object
      description: >-
        Defines outgoing connections from a node. The type of edge depends on
        the source node's action:

        - Most nodes use `to` for a single next node

        - BOOL_CONDITION nodes use `true` and `false` for branching

        - LOOP nodes use `loop_done` and `loop_not_done` for iteration control
      properties:
        to:
          type: string
          nullable: true
          description: ID of the next node (for non-branching nodes)
        'true':
          type: string
          nullable: true
          description: >-
            ID of the node to execute when condition is true (BOOL_CONDITION
            nodes)
        'false':
          type: string
          nullable: true
          description: >-
            ID of the node to execute when condition is false (BOOL_CONDITION
            nodes)
        loop_done:
          type: string
          nullable: true
          description: ID of the node to execute when loop completes (LOOP nodes)
        loop_not_done:
          type: string
          nullable: true
          description: ID of the node to execute for the next loop iteration (LOOP nodes)
  securitySchemes:
    AuthScheme:
      type: apiKey
      name: cc-key
      in: header
      description: >-
        API key-based authentication. Provide your CloudCruise API key in the
        cc-key header.

````