Repository Bindings
A shape on the canvas is a placeholder until you bind it. Binding connects a C4 diagram node to a real entity in your Nodinite Repository — a System, a Service, or a Contract when UseContracts is enabled. Once bound, the node becomes live: it shows monitoring health, counts, and navigation links directly inside the diagram.
Nodes are not the only bindable items. A connector message member can also be linked to a Message Type, so the architecture flow in the diagram points at the same canonical message definition used elsewhere in the Repository.
Bindings are what make C4 diagrams in Nodinite fundamentally different from static diagramming tools. Your architecture diagram reflects the actual state of your integration landscape in real time.
What Binding Does
| Without binding | With binding |
|---|---|
| Shape has a placeholder name | Shape displays the entity's Repository name |
| No health data | Monitoring state pill (OK / Warning / Error) |
| No navigation | Direct link to the entity's detail page |
| No contextual counts | Counts for integrations, services, contracts |
| No hamburger menu actions | Full context menu with edit, Mapify, log links |
Connector Message Members and Message Types
| Without a Message Type link | With a Message Type link |
|---|---|
| Member is free text only | Member points to a canonical Repository Message Type |
| Naming can drift between teams | The same message can be opened from the diagram and the Message Type catalog |
| No direct message-centric navigation | Interactive View can open the linked Message Type from the connector popup |
Binding a Node to an Entity
- Open the Node Inspector by clicking the node's centre area
- In the Binding field, click Resolve
- The Entity Resolver dialog opens — type to search for the entity by name
- Select the matching System, Service, or Contract from the results list
- The binding is saved automatically
To remove a binding, click Unbind in the Binding field. The node reverts to a placeholder that can be rebound to a different entity.
When UseContracts is enabled, you can replace an existing Service binding with a Contract binding directly from the same Resolve flow.
If UseContracts is disabled, the resolver hides contract choices and behaves as System/Service-only.
Binding a Connector Member to a Message Type
Use this when a connector represents a named business message rather than just a generic transport relationship.
- Click the connector in the Designer to open the Connector Inspector
- Select the member row you want to manage
- In the Message Type field, choose the matching Message Type
- Leave the field empty if you want the member to remain descriptive text only
The member's Display name remains editable even when it is linked. Use the visible label to keep the diagram readable and the Message Type binding to keep the relationship anchored to the Repository.
In Interactive View, linked members show direct actions to open the linked Message Type. If the current user can modify Message Types, the connector popup also exposes the edit action.
After Binding — Service Nodes
When a node is bound to a Service, the Node Inspector's operational summary section shows:
| Data | What it means |
|---|---|
| Monitoring state pill | The live health of the service: OK , Warning , Error , Unavailable |
| Dead lightbulb | Monitoring is not configured for this service |
| Resource count | Number of monitored resources |
| Direction badge | Whether the service Receives, Sends, or is Two-way |
| Transport contracts count | Count of contracts associated with this service |
| BPM count | Business Process Models using this service (requires BPM feature flag) |
| C4 diagram usage count | How many C4 diagrams reference this service |
The monitoring state pill is clickable — clicking it navigates to the service's resource list in the Monitor view.
After Binding — Contract Nodes
When a node is bound to a Contract, the Node Inspector operational summary focuses on contract-specific context:
| Data | What it means |
|---|---|
| Entity type badge | Confirms the node is a Contract, not a fallback Service |
| Owning system context | The System used for Systems-mode boundary placement |
| Related service context | The supporting service context for contract navigation and drill-through |
| C4 diagram usage count | How many C4 diagrams reference this contract-bound node |
In contract-bound communication editing, the direction model follows contract semantics (outbound initiation). The UI avoids the full service-oriented direction list for this path.
After Binding — System Nodes
When a node is bound to a System:
| Data | What it means |
|---|---|
| Integration count | Integrations associated with this system |
| Service count | Services belonging to this system |
| Transport contracts count | Contracts used by this system |
| C4 diagram usage count | How many C4 diagrams reference this system |
Live Monitoring on the Canvas
Both the View page and the Designer poll the Nodinite monitoring API every 10 seconds. Monitoring state pills on all bound nodes update automatically in the background.
This means a colleague can promote a diagram to Active in the morning and by the afternoon it is already showing live health indicators for all bound services — no manual refresh needed.
Drill-through Links
A drill-through link connects a C4 node to another diagram. When a viewer clicks the link badge on a node, they navigate directly to the linked diagram. This is how cross-diagram navigation works — for example, clicking a System node in an L1 Context diagram to jump to the L2 Container diagram for that system.
Managing links
- Open the Node Inspector
- In the Drill-through Links section (right column), click Manage Links
- The Link Manager panel opens on the right side of the screen
- Add a link by searching for a diagram and selecting it
- Set a label for the link (e.g. "Container details")
- Remove links using the icon next to each entry
A link badge appears on the node in both View and Designer mode. The count of linked diagrams is shown in the Node Inspector header.
Article Links
You can attach Nodinite articles to any bound node. Articles appear in the Article Links section of the Node Inspector.
Adding articles
- Open the Node Inspector
- Click Manage Articles in the right column
- The Article Picker panel opens
- Search for articles and select them
- Each selected article is attached to the node
Article badges are visible on the canvas tile. Clicking the badge expands a list of attached articles with view and open-in-new-tab actions.
The Hamburger Menu
Each bound node shows a hamburger menu (☰) in its action strip at the bottom of the tile. The menu appears on hover in both View and Designer mode.
The menu provides contextual navigation and editing shortcuts without leaving the diagram:
For Service nodes
| Action | Description |
|---|---|
| View | Open the service in its read-only view |
| Quick Edit | Edit the service in an in-page modal |
| Go to Edit (new tab) | Open the service edit page in a new tab |
| Go to View (new tab) | Open the service view in a new tab |
| Show in Mapify | Open the service in the Mapify landscape view |
| Show in Mermaid | View the service in Mermaid output (requires Mapify feature flag) |
| Show Landscape (expandable) | Open the integration landscape view |
| Integrations (submenu) | Browse integrations for this service |
| Contracts (submenu) | Browse transport contracts |
| Message Types (submenu) | Browse message types |
| End Points (submenu) | Browse end points |
For Contract nodes
| Action | Description |
|---|---|
| View | Open the contract in its read-only view |
| Go to View (new tab) | Open the contract view page in a new tab |
| Related Service | Open the service context for the contract |
| Related System | Open the owning system used for boundary placement |
| Message Types (submenu) | Browse message types associated with the contract |
| End Points (submenu) | Browse end points associated with the contract |
For System nodes
| Action | Description |
|---|---|
| View | Open the system's read-only view |
| Quick Edit | Edit the system in an in-page modal |
| Go to Edit (new tab) | Open the system edit page in a new tab |
| Show in Mapify | Open the system in the Mapify landscape view |
| Integrations (submenu) | Browse integrations for this system |
| Services (submenu) | Browse services in this system |
| Contracts (submenu) | Browse contracts |
Expandable submenus load their items from the Web API on demand — a loading spinner appears while items are fetched.
Custom Metadata on Nodes
Custom metadata fields can be attached to bound nodes. The Custom Metadata button in the Node Inspector shows a count badge when metadata is assigned.
Click the button to open the Custom Metadata Attachment modal, where you can:
- View all metadata currently attached
- Attach new metadata values to the bound entity
- Remove existing metadata assignments
Custom metadata is also used by the Custom Metadata Filters bar in the Designer, which can visually highlight or dim nodes based on their metadata values.
Frequently Asked Questions
The Resolve button is not finding my Service
Type slowly — the search is a live free-text filter against entity names. Try a partial match (e.g. "Order" instead of "Order Processing Service"). If the entity is not shown, confirm it exists in the Repository under Services.
The Resolve dialog does not offer Contract
Contract binding choices are shown only when UseContracts is enabled. If you do not see contract options:
- Verify UseContracts is enabled in your environment
- Re-open the Resolve dialog after changing the setting
- Confirm the target contract exists in Contracts
The node shows a dead lightbulb after binding
The Service exists in the Repository but has no monitoring resources configured. See the Monitoring documentation to configure monitoring for the service. The lightbulb indicator will change to a monitoring state pill once monitoring is set up.
Monitoring state is always Unavailable
The monitoring state is fetched from the live monitoring API. An Unavailable status means Nodinite could not reach the monitored resource. This reflects the actual state of the integration environment — it is not a diagrams problem.