---
title: "Update Public Ferry Diagram"
method: PUT
path: "/v2/public/ferry/diagrams/{diagram_id}"
tags: ["ferry-diagrams"]
---

# Update Public Ferry Diagram

`PUT /v2/public/ferry/diagrams/{diagram_id}`

## Path parameters

- `diagram_id` string, required

## Query parameters

- `workspace_id` string, nullable

## Headers

- `X-Workspace-Code` string

## Request body

- FerryDiagramUpdateRequest
  - `name` string, required
  - `description` string
  - `nodes` FerryDiagramNode[]
    - `id` string, required
    - `type` 'objectTable' | 'process' | 'note', required
    - `position` FerryDiagramPosition, required
      - `x` number, required
      - `y` number, required
    - `data` FerryDiagramNodeData, required
      - `label` string, required
      - `description` string
      - `fields` string[]
      - `moduleName` string, nullable
      - `objectKey` string, nullable
      - `objectSlug` string, nullable
      - `color` 'default' | 'brand' | 'success' | 'warning' | 'danger'
  - `edges` FerryDiagramEdge[]
    - `id` string, required
    - `source` string, required
    - `target` string, required
    - `label` string
    - `type` 'default' | 'smoothstep'
    - `sourceHandle` string, nullable
    - `targetHandle` string, nullable
  - `viewport` FerryDiagramViewport
    - `x` number
    - `y` number
    - `zoom` number
  - `revision` integer, required

## Response `200`

Successful Response

- UpdatePublicFerryDiagramApiV2PublicFerryDiagramsDiagramIdPut200Envelope
  - `success` true, required
  - `data` FerryDiagramData, required
    - `name` string, required
    - `description` string
    - `nodes` FerryDiagramNode[]
      - `id` string, required
      - `type` 'objectTable' | 'process' | 'note', required
      - `position` FerryDiagramPosition, required
        - `x` number, required
        - `y` number, required
      - `data` FerryDiagramNodeData, required
        - `label` string, required
        - `description` string
        - `fields` string[]
        - `moduleName` string, nullable
        - `objectKey` string, nullable
        - `objectSlug` string, nullable
        - `color` 'default' | 'brand' | 'success' | 'warning' | 'danger'
    - `edges` FerryDiagramEdge[]
      - `id` string, required
      - `source` string, required
      - `target` string, required
      - `label` string
      - `type` 'default' | 'smoothstep'
      - `sourceHandle` string, nullable
      - `targetHandle` string, nullable
    - `viewport` FerryDiagramViewport
      - `x` number
      - `y` number
      - `zoom` number
    - `id` string, required
    - `workspaceId` string, required
    - `revision` integer, required
    - `createdById` integer, nullable
    - `updatedById` integer, nullable
    - `createdAt` union
      - string, date-time
      - string
    - `updatedAt` union
      - string, date-time
      - string
  - `meta` EnvelopeMeta, required
    - `ctx_id` string, required
    - `pagination` PaginationMeta
      - `page` integer, required
      - `page_size` integer, required
      - `total` integer, required
      - `next_cursor` string, nullable
    - `toast` ToastMessage
      - `variant` 'success' | 'error' | 'info' | 'warning', required
      - `code` string, required
      - `message` string, required
      - `i18n` ToastMessageI18n, required
        - `en` string, required
        - `ja` string, required

## Other responses

- `401` — Error response
- `403` — Error response
- `422` — Error response

---

[API](https://skmtc.net/sankahq/apis/sanka-public-api.md) · [All operations](https://skmtc.net/sankahq/apis/sanka-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sankahq/sanka-public-api/revisions/91dba803a2c1/schema)
