- 13 minutes to read

Rich Data Types for Custom Metadata

Beyond Simple Text Fields

Competing products offer dropdowns. Nodinite offers a complete metadata ecosystem. Custom Metadata offers 13 data types for new fields that capture complete business context. Every value is entered or picked by a user; none is calculated or loaded from another system.

  • Select and Check Box - Gold/Silver/Bronze SLA and Owner names (one value), or multiple compliance tags such as GDPR + HIPAA + PCI (several values)
  • Text Field, Text Area, and Markdown - Short codes, longer notes, and formatted documentation
  • Number - Volumes and counts
  • Link and Item Link - URLs to documentation and runbooks, and a reference to one other Repository item
  • Table - Version history, configuration matrices, test results
  • Attachment - Diagrams, runbooks, certificates, Excel files
  • Shared File - A reusable file from the File Library, governed by the SharedFilePolicy System Parameter
  • Image - Photos, logos, and architecture visuals from the centralized Image Library
  • Mermaid Diagram - Visual workflows and data flows written as Mermaid text

Add or manage Custom Metadata shows how to configure each data type.

Rich Data Types Overview

graph TD roMetadata["fa:fa-tags Custom Metadata
Define Once"] roSimple["fa:fa-font Simple Types
Text Field, Text Area, Number"] roSelection["fa:fa-caret-down Selection Types
Select, Check Box"] roStructured["fa:fa-table Structured and Reference Types
Table, Link, Item Link,
Attachment, Shared File, Image"] roAdvanced["fa:fa-bolt Rich Content Types
Markdown, Mermaid Diagram"] roUseCase1["fa:fa-star SLA Levels
Gold/Silver/Bronze"] roUseCase2["fa:fa-shield-halved Compliance
GDPR + HIPAA + PCI"] roUseCase3["fa:fa-book Documentation
Runbooks, Diagrams"] roUseCase4["fa:fa-diagram-project Visual Context
Flows, Approval Chains"] roMetadata ==> roSimple roMetadata ==> roSelection roMetadata ==> roStructured roMetadata ==> roAdvanced roSelection --> roUseCase1 roSelection --> roUseCase2 roStructured --> roUseCase3 roAdvanced --> roUseCase4 style roMetadata fill:#2678BD,stroke:#2678BD,stroke-width:3px,color:#fff style roSimple fill:#93d16d,stroke:#3F827B,stroke-width:2px style roSelection fill:#93d16d,stroke:#3F827B,stroke-width:2px style roStructured fill:#93d16d,stroke:#3F827B,stroke-width:2px style roAdvanced fill:#93d16d,stroke:#3F827B,stroke-width:2px style roUseCase1 fill:#FFD525,stroke:#E47528,stroke-width:2px style roUseCase2 fill:#FFD525,stroke:#E47528,stroke-width:2px style roUseCase3 fill:#FFD525,stroke:#E47528,stroke-width:2px style roUseCase4 fill:#FFD525,stroke:#E47528,stroke-width:2px

Rich data types (green) enable diverse use cases (yellow). From simple dropdowns to Mermaid diagrams, Custom Metadata captures complete business context.

Custom Metadata Data Type list
The Data Type list when you add a Custom Metadata field.

All 13 Data Types

These are the data types the Data Type picker offers when you create a field, with their names as they appear in the UI.

Data Type Stores Typical use
Text Field One line of text Codes, short names, phone numbers
Text Area Several lines of text Notes, instructions
Markdown Formatted text, rendered as HTML Rich documentation with lists and links
Mermaid Diagram Mermaid syntax, rendered as a diagram Flows, approval chains, state transitions
Link A URL Runbooks, architecture pages, approval records
Item Link A reference to one item of any type that supports Custom Metadata Point from one entity to a related one
Select One value from a list SLA Level, Owner, Environment
Check Box Multiple selections from an array of check boxes Compliance Tags, Technology Stack, flags
Table Rows with user-defined columns Version history, configuration matrices
Attachment A file stored on the value Diagrams, runbooks, certificates
Number A number Volumes, counts
Image A reference to an image in the Image Library Logos, architecture pictures
Shared File A reference to a file in the File Library One shared PDF or schema used by many entities

Note

Older fields may use the legacy Multi Select, Date, or Date Time types; new fields can't be created with them. Use Check Box when a field needs several values.

Note

Custom Fields, the older and separate feature, can load values through plugins. Custom Metadata values are always entered by users.

Select Fields (Single Value Dropdown)

Tip

Users with Create permissions can use the Quick Add feature to add new options directly from the dropdown, so you update selection lists without leaving the current form.

SLA Level

  • Gold (4-hour response, 99.9% uptime)
  • Silver (8-hour response, 99% uptime)
  • Bronze (24-hour response, 98% uptime)

Benefits

  • Consistent SLA definitions across all integrations
  • SLA level in alert content, so responders prioritize correctly (see Alert Enrichment)
  • Portfolio analytics: "Show all Gold SLA integrations"

Owner

  • Henrik (Finance integrations)
  • Sarah (HR integrations)
  • Ahmed (Supply Chain integrations)
  • Michael (IT infrastructure)

Benefits

  • Standardized owner names (no typos, no variations)
  • The owner's name in alert content, so the responder knows who to call
  • Ownership reports: "Show all integrations owned by Henrik"

Environment

  • Production
  • Test
  • Development
  • Sandbox

Benefits

  • Clear environment classification
  • Make it one of the Mandatory Fields so every Integration states its environment
  • Filter production-only integrations for compliance audits

Check Box Fields (Multiple Values)

A Check Box field is the multi-value type: users make multiple selections from an array of check boxes.

Compliance Tags

Values: GDPR, HIPAA, PCI DSS, SOX, ISO 27001, CCPA

Example Usage

  • Integration "Payment-Processing": [GDPR, PCI DSS]
  • Integration "Healthcare-Claims": [HIPAA, GDPR]
  • Integration "Employee-Directory": [GDPR, SOX]
  • Integration "Financial-Reporting": [SOX, ISO 27001]

Benefits

  • A single integration can have multiple compliance requirements
  • Filter queries: "Show all integrations with GDPR AND PCI DSS" (two filter rows) or "GDPR OR HIPAA" (two values in one row)
  • Compliance breach: filter by tag → hand the list to the legal team instantly

Technology Stack

Values: .NET, Java, Python, BizTalk, MuleSoft, Boomi, Azure Logic Apps, AWS Lambda

Example Usage

  • Service "Order-API": [.NET, Azure Logic Apps]
  • Service "Payment-Gateway": [Java, AWS Lambda]
  • Service "Data-Transformer": [Python, Azure Functions]

Benefits

  • Technical debt analysis: "Show all integrations using deprecated technology"
  • Context for responders: the alert shows which technology team knows the Service
  • Migration planning: "Identify all BizTalk integrations for cloud migration"
  • Field: "Runbook URL"
  • Value: https://docs.company.com/runbooks/payment-failover.pdf

Where It Appears

  • In alerts: "Emergency Procedure: [View Runbook]" (see Alert Enrichment)
  • In the Web Client: a clickable link next to the integration name
  • In webhooks: the JSON payload includes the URL for automation

Benefits

  • Instant access to recovery procedures during incidents
  • No hunting for documentation during 3 AM emergencies
  • The runbook is always current (one source of truth)

Architecture Diagrams

  • Field: "Architecture Diagram"
  • Value: https://docs.company.com/architecture/order-to-cash.png

Benefits

  • Visual understanding of system dependencies
  • New team members onboard faster
  • Troubleshooting with full context

Approval Emails

  • Field: "Approval Email"
  • Value: https://outlook.office365.com/mail/inbox/id/AAMkADY...

Benefits

  • Audit trail for deployments
  • Compliance: "Show proof of approval for all Production integrations"
  • Dispute resolution: "Who approved this deployment?"

Tables (Structured Data)

Version History

Version Deployed Changes Approved By
3.2.1 2024-11-01 Bug fix: timeout handling Henrik
3.2.0 2024-10-15 Feature: retry logic Sarah
3.1.5 2024-09-20 Security patch IT Security

Benefits

  • Complete deployment history embedded in metadata
  • Audit trail for compliance
  • Rollback planning: "When was the last stable version deployed?"

Test Results

Test Type Date Result Notes
Load Test 2024-10-25 ✅ Pass 10,000 TPS
Security Scan 2024-10-20 ✅ Pass No vulnerabilities
Compliance Audit 2024-09-15 ✅ Pass GDPR compliant

Benefits

  • Quality assurance embedded in operational systems
  • Compliance evidence: "Show me test results for all Production integrations"

Configuration Matrix

Environment Database API Key Timeout
Production SQL-PROD-01 prod-key-xyz 30s
Test SQL-TEST-01 test-key-abc 60s
Dev SQL-DEV-01 dev-key-123 120s

Benefits

  • Environment-specific configuration documented
  • Troubleshooting: "Which database does Test use?"

Warning

Never store real API keys, passwords, or connection strings in Custom Metadata: values can be propagated into alerts. See the sensitive data safety rule in Alert Enrichment.

Check Box Flags

A Check Box field with a short list of values also works well for yes/no-style flags.

Common Use Cases

Approved for Production

  • ☑ Yes (integration can deploy to Production)
  • ☐ No (integration blocked from Production)

GDPR Compliant

  • ☑ Yes (integration reviewed and compliant)
  • ☐ No (requires GDPR assessment)

24/7 Support Required

  • ☑ Yes (on-call team assigned)
  • ☐ No (business hours support only)

Encryption Enabled

  • ☑ Yes (data encrypted in transit and at rest)
  • ☐ No (encryption not required)

Benefits of Check Box Fields

  • Simple yes/no decisions with clear semantics
  • Portfolio queries: "Show all integrations without 24/7 support" (the flag with Invert condition)
  • Compliance filters: "Show all GDPR integrations not yet compliant"

File Attachments

Architecture Diagram Uploads

Upload: PNG, PDF, Visio files

Benefits

  • Visual documentation embedded in the operational system
  • No external SharePoint/Confluence dependency
  • Diagrams displayed in the Web Client
  • Linked in alerts: "Architecture: [View Diagram]"

Runbooks

Upload: PDF, Word, Excel files

Benefits

  • Emergency procedures always accessible
  • Replace the file when the procedure changes
  • Included in alert emails as links (not embedded, to save bandwidth)

Certificates

Upload: PEM, CER, PFX files

Benefits

  • Security certificates documented with the integration
  • Pair the file with a Text Field for the expiry date, so the date is visible next to the certificate

Test Data

Upload: Excel, CSV, JSON files

Benefits

  • Sample data sets for testing
  • The QA team has instant access to test scenarios

Shared Files

A Shared File value references a reusable file in the File Library instead of storing a private copy on each value. Use it when many entities should point to the same PDF, schema, or guide. The SharedFilePolicy System Parameter controls which file types you can upload and how Shared File links open.

Image Fields (Library Reference)

The Image field type (introduced in Nodinite 7.5.0) references an image stored in the centralized Image Library instead of embedding a binary file copy per metadata value. Multiple entities can reference the same image without duplication, and updating the image in the library updates every entity that references it.

How It Differs from File Attachments

File Attachment Image Field
Storage Binary copy per metadata value Single shared entry in Image Library
Searchable gallery ❌ No ✅ Yes — search by name, title, description, tag
Alt text for accessibility ❌ None ✅ Stored centrally on the image
Size control ❌ None ✅ 8 size options at display time
Reuse across entities ❌ No — upload again per entity ✅ Yes — reference once, display everywhere
Updates Replace per entity Update in library → all references updated

Image Use Cases

  • Field: "System Logo"
  • Value: Image from library (e.g., sap-logo)
  • Displayed: Thumbnail on the System entity form and in Mapify node popups

Every SAP system entity shows the official logo without uploading it repeatedly, and a logo update means replacing the image once, in place, in the Image Library: all system entities reflect it instantly.

Architecture Diagram

  • Field: "Architecture Diagram"
  • Value: Image from library (e.g., order-to-cash-architecture)
  • Displayed: Medium-size image on the Integration entity form

The visual dependency map is embedded directly on the Integration, and screenshot updates propagate automatically to all referencing entities.

Team Photo

  • Field: "Team Photo"
  • Value: Image from library (e.g., integration-team-2026)
  • Displayed: Small thumbnail beside the owner metadata on entity forms

Configuring the Image Field

When you define an Image Custom Metadata field, you can set a default display size that applies wherever the field is rendered. You can override the size per insertion in Articles, but it's fixed at the field-definition level for entity forms.

Size Option Max Width Recommended For
xxs 64 px Icon-sized logos
xs 128 px Small thumbnails
s 256 px Small illustrations
m 384 px Medium screenshots (default)
l 512 px Standard diagrams
xl 768 px Large architecture diagrams
xxl 1024 px Extra-large diagrams
Original Full width Full-width visuals

Rendered Output

In entity forms, the Image field renders as:

<img src="/api/ImageAssets/name/sap-logo/File"
     alt="SAP ERP logo"
     class="ndi-s"
     style="max-width: 256px; height: auto;">

The Image Library serves the image from a stable, name-based URL that works identically across Test and Production environments.

Where Image Fields Appear

Custom Metadata Image fields render in every context where Custom Metadata is displayed:

Mermaid Diagrams (Live Visual Workflows)

Approval Chain Diagram

graph LR
    Dev[Developer] -->|Submits| TechLead[Tech Lead]
    TechLead -->|Approves| Architect[Architect]
    Architect -->|Approves| VP[VP Operations]
    VP -->|Deploys| Production[Production]

Benefits

  • Visual approval workflow embedded in metadata
  • Business users understand the governance process
  • Edit the diagram text when the process changes

Data Flow Diagram

graph TD
    Customer[Customer Portal] -->|Order| API[Order API]
    API -->|Validate| PaymentGW[Payment Gateway]
    PaymentGW -->|Charge| Bank[Bank System]
    Bank -->|Confirm| Warehouse[Warehouse System]
    Warehouse -->|Ship| Customer

Benefits

  • Visual system dependencies
  • Troubleshooting: "Where did the order fail?"
  • New team members understand the flow instantly

State Transitions

stateDiagram-v2
    [*] --> Development
    Development --> Testing
    Testing --> Approval
    Approval --> Production
    Production --> Maintenance
    Maintenance --> Production
    Production --> [*]

Benefits

  • Integration lifecycle visualization
  • Governance: "What approvals are required to reach Production?"

Number

  • Field: "Peak Transaction Volume"
  • Value: 15000

In Portfolio Filtering, a Number field matches exact integers only, for example Peak Transaction Volume = 15000. There are no range operators such as < or >=.

An Item Link field links to one item, so related documentation stays connected without copying it. Use a Link field for URLs outside Nodinite.

  • The linked item can be of any type that supports Custom Metadata: Integration, System, Service, Contract, Message Type, End Point, Resource, Article, BPM, Domain, Map, or C4 Diagram (see Entity Coverage).
  • The field definition can't restrict which of these types are allowed.
  • Only the item's type and ID are stored; the name is looked up each time the value is displayed, so a renamed item shows its new name.
  • Clicking the value opens the linked item's page in a new tab.

Configuration Guide

Step 1: Define Rich Data Type Fields

In the Web Client, open Repository → Custom Metadata and follow Add or manage Custom Metadata.

Select Field

  1. Click Add Custom Metadata
  2. Name: "SLA Level"
  3. Data Type: Select
  4. Values: Gold, Silver, Bronze
  5. Save

Check Box Field

  1. Name: "Compliance Tags"
  2. Data Type: Check Box
  3. Values: GDPR, HIPAA, PCI DSS, SOX, ISO 27001
  4. Save
  1. Name: "Runbook URL"
  2. Data Type: Link
  3. Save

Attachment Field

  1. Name: "Architecture Diagram"
  2. Data Type: Attachment
  3. Save

Image Field

  1. Name: "System Logo"
  2. Data Type: Image
  3. Default size: s (256 px) — suitable for entity form thumbnails
  4. Save
  5. On each entity, click Choose from Image Library to select the image for that entity

Step 2: Assign Values to Integrations

Open Add or manage Integration and assign values:

  • SLA Level: Gold (select from dropdown)
  • Compliance Tags: GDPR, PCI DSS (pick several values)
  • Runbook URL: https://docs.company.com/runbooks/payment-failover.pdf
  • Architecture Diagram: Upload file (payment-architecture.png)

Step 3: Use in Alerts and Filters

In alerts (Alert Enrichment):

  • Email, through the alarm stylesheet: "SLA: Gold, Compliance: GDPR + PCI DSS"
  • HTTP Webhook JSON: the Custom Metadata values are part of the payload

In filters (Portfolio Filtering):

  • "Show all Gold SLA integrations": SLA Level = Gold
  • "Show all integrations with GDPR compliance": Compliance Tags = GDPR
  • "Show all integrations without runbook URL": Runbook URL with Exists + Invert condition

Next Steps