In this guide

FOLLOW THE CONVERSATION

Sequence Diagram guide

Build ordered API and service interactions with participants, calls, replies, branches, and notes.

Participants & messages → Sequence diagramOpen Sequence Diagram

Follow the conversation

Sequence Diagram is an independent visual workspace for interactions between people, services, and systems. Participants run from left to right; time runs down the page. The Flow outline and diagram show the same ordered model.

Choose the API request template to explore a client, Orders API, Auth service, and database. The template verifies a token and uses an if/else group to return orders or an unauthorized response. Choose Blank diagram to build your own conversation.

Build an API interaction

  1. Add participants for the Client and API. Select one in the Flow panel or on the diagram to edit its name, symbol, color, and left-to-right order.
  2. The blank canvas guides you through participants and your first message. New names and message text are selected so you can type immediately. Choose Message, then edit From, To, and Message in Details. The Add bar shows where the new step will go and who sends the message. A message is added after the selected step, in the same branch. Selecting a participant starts the next message from that participant; a selected message supplies its endpoints. Notes added from a selected participant use that anchor. With no selected step, it is added to the main flow.
  3. Select a message and use Add reply after this message to reverse its endpoints and add a dashed return. Drag steps to place them in time; the preview shows their destination. Flow’s up/down controls reorder within the current branch.
  4. Use Group → If / else, Optional, Loop, or Parallel. Select a branch to edit its condition or add steps there. Add branch inserts before an else fallback. In Flow, each branch has its own + button.
  5. Run Checks, review the diagram, and save or export the result. On phones, use Flow, Diagram, and Details tabs; Edit details opens the selected element and Back to diagram returns to the canvas.

Select, move, and add on the diagram

Click a participant header or lifeline, message, note, group border, or branch area to select it. Press Enter or Space to open Details. Drag participant headers left or right to adjust spacing and order; drag messages, notes, or whole groups vertically to set their time order and leave a gap. On touchscreens, drag the visible grip; swipe elsewhere to scroll.

The preview shows the proposed diagram and names its destination branch. Drop into another branch to transfer a step, or use Move step to in Details. Creation and destruction stay in the main flow; groups cannot move inside themselves. Drags snap to 8 pixels. Escape or cancelling leaves the model unchanged; release makes one undoable change. Tidy up restores automatic spacing while keeping your order and branches.

Click the Add bar, or on desktop drag Participant, Message, Note, or a Group onto the diagram. Group choices explain If / else, Optional, Loop, and Parallel in plain language. The drop preview and canvas footer name the destination branch and show its position in time. Palette drags start with the first two participants; the direction is shown during dragging. Choose message endpoints in Details; dropping near a lifeline does not change them.

Click empty canvas to clear the selection. Drag empty canvas or use the middle mouse button to explore while keeping the selection. A group can be added before participants; its canvas placeholder and Flow + button add the first participant, then offer the first message.

Participants and lifelines

Participant, Actor, Boundary, Control, Entity, and Database change the header symbol. They are roles in an interaction, not database tables. Names and optional opaque hex accent colors are saved with the diagram.

Drag a participant header to position it; nearby headers move aside to stay readable. Move left and Move right swap its place in the displayed order. Message endpoints remain unchanged. Participant Details offers Send message and Add note actions. A message to the same participant becomes a self-call automatically; a one-participant diagram offers this explicitly. Deleting a participant also removes messages involving it and removes its anchor from notes; Undo restores the complete change.

Calls, replies, and lifetimes

Calls, replies, and lifetimes
KindMeaning
Synchronous callSolid line and filled arrow. The sender waits for the called operation.
Asynchronous messageSolid line and open arrow. The sender may continue without waiting.
Reply / returnDashed line returning to the caller. Add reply reverses the selected message endpoints.
Create participantCreation belongs at the first interaction of the target lifeline. Its header begins at this message.
Destroy participantAn X marks the target’s destruction. This should be its last interaction.
Creation and destruction are supported in the main flow, outside fragments. Checks flag inconsistent lifetime ordering; invalid ordering keeps the full lifeline visible so later interactions are not hidden.

Group branches without losing their meaning

If / else (alt) contains 2–6 alternative branches; exactly one matching operand is chosen. Optional (opt) contains one conditional branch. Loop contains one repeated branch; write the iteration condition. Parallel (par) contains 2–6 operands whose interactions may interleave.

Branch membership is explicit. Flow buttons and Alt+Up/Down keep a step in its current branch. Dragging can transfer a message, note, or whole group to the branch named in the preview; Move step to offers the same choice in Details. Invalid destinations are disabled with a reason, including moving a group inside itself, exceeding four nested levels, or putting creation/destruction inside a branch.

Changing a multi-branch group into Optional or Loop asks before keeping only its first branch. Deleting a branch asks before removing its steps; if one branch remains, the group becomes Optional, and deleting the only branch removes the group. Deleting a group removes all its steps with confirmation. Undo restores the complete change. Vertical placement of parallel branches does not imply execution order between them.

Notes, numbering, and activations

Add a note and select the participants it should span. Notes wrap within their frame and move with the sequence order. Use them for constraints or explanations rather than putting a paragraph on a message arrow.

View controls message numbers and automatic activation bars. These appearance options are saved and included in image export. Numbers provide a reading order; they are not measured timestamps or a total execution order across parallel branches.

Activation bars are inferred from synchronous calls and drawn replies. Self-calls can nest. Alternative branches are calculated separately so replies in one branch do not close calls in another. Missing replies leave an activation open to that scope’s end; this is a visual aid rather than execution analysis.

New diagrams start at a readable scale; wide diagrams can scroll horizontally. Fit diagram width gives an overview while preserving vertical reading. Scroll to explore, use the zoom controls, or Ctrl/Command plus scroll to zoom around the pointer. Find searches participant names and types, messages and their endpoints, notes, group descriptions, and conditions. Matching steps keep their relevant branch context; IDs and positions are excluded. Clear or Escape restores the full Flow, and an empty result explains what to try. Selecting a Flow or Checks result, or adding an element, brings its label into view without changing zoom. On phones this happens when you return to Diagram. Canvas scrolling, zoom and selection are workspace views outside the document and Undo history.

Save, share, and import

New diagrams remain in memory. Save signs in when needed and creates an independent sequence diagram cloud file. File → Open sequence diagrams opens its own file list. Save the latest changes before sharing a read-only public link. Public viewers can inspect and export but cannot edit the file.

File → Download JSON keeps the complete editable document, including participant positions and step gaps. Cloud saves and image exports retain this placement too. Import JSON accepts exported Erd Go sequence diagram version 1 files up to 4 MB, validates the whole file before replacement, and supports Undo. Older files keep automatic spacing; overlapping imported positions are displayed safely. SQL, Class Diagram, Mermaid, and PlantUML are not import formats.

File → New diagram opens the Blank/Template chooser again. Blank and API request example replace an existing model with confirmation and Undo. Unsaved diagrams prompt before leaving or reloading. Nothing is written to browser storage.

Export a diagram or text source

Export creates PNG, JPEG, WebP, standalone vector SVG, or image-backed PDF. Choose Entire diagram or Current view (open the Diagram panel first on phones) and an HD, 2K, or 4K width. Raster dimensions are limited to 8192 pixels per side and 16 megapixels; very tall diagrams may be reduced. Use SVG for scalable large diagrams, or Current view for a readable section.

File → Export PlantUML / Mermaid previews, copies, and downloads local text. The text renderer controls its own layout and appearance; participant symbols or colors may differ. JSON is the complete editable format. No source is sent to a third-party rendering server.

sequenceDiagram
participant Client
participant API
participant Auth
participant Database
Client ->> API: GET /orders
API ->> Auth: verify token
Auth -->> API: identity
alt valid token
  API ->> Database: SELECT orders
  Database -->> API: orders[]
  API -->> Client: 200 OK
else invalid token
  API -->> Client: 401 Unauthorized
end
Build this flow visually or use the API request template. The example illustrates text export; it cannot be imported into Erd Go.

Shortcuts and limits

Shortcuts and limits
Action or limitBehavior
Ctrl/Cmd+SSave to cloud; sign in when prompted.
Ctrl/Cmd+KOpen and focus Find in the Flow panel.
Ctrl/Cmd+Z / Shift+Z / Ctrl+YUndo / Redo outside text fields. Text fields retain native editing shortcuts.
Enter / SpaceOpen Details for the focused diagram element.
Alt+Left / RightMove the selected participant left or right.
Alt+Up / DownMove the selected step within its current branch.
Delete / BackspaceDelete the selection outside text fields, or use the canvas trash button. Participant cascades and group/branch removal ask for confirmation.
Escape during a dragCancel the preview without changing the model.
Tidy upRestore automatic spacing without changing order or branches; Undo restores placement.
Participants and steps30 participants and 300 total steps, including fragments and notes.
Text80 characters per participant name, 240 per message/condition/group label, 2,000 per note.
Files and history4 MB imported JSON, 1.5 MB cloud envelope, 3–259 character cloud file name, and 80 undo states.

Review and troubleshoot

Checks flag empty names, duplicate participant names, missing message labels, empty branches, missing conditions, and inconsistent creation or destruction ordering. Choose a finding to reveal its Details. These checks do not execute the conversation or prove API behavior.

If import fails, your current diagram stays intact. An older pending file read cannot replace a newer document, newer import, or edited model. If cloud saving fails, keep the diagram open and download JSON before leaving.

Use the OMG UML specification for the meaning of interaction notation. PlantUML and Mermaid have their own text syntax; the generated files are exports for those tools, not an Erd Go import language.