Skip to content

Integration Map

MaaSAI solutions work together through a small set of shared interfaces and a set of documented solution-to-solution connections. This page summarises the integration principles, the interfaces and their protocols, the connections between solutions with the data they carry, and the security principles that apply to them. The connections follow the D5.1 reference architecture and are refined in the M20 implementation deliverables (D6.1, D8.1, D10.1, D12.1).

MaaSAI integration map

Integration map of the MaaSAI solutions, drawn from the D5.1 reference architecture and the M20 implementation deliverables.

  • Standards-based and message-oriented: open standards and event- or message-driven integration are preferred over bespoke point-to-point coupling. The standards in use in the first release are REST/JSON, MQTT, the Ethereum JSON-RPC, ISA-95 (the data model of EDGE Data Storage), and RDF/Turtle with SPARQL inside the MaaS Dynamic Catalogue (D6.1, D8.1, D10.1, D12.1).
  • Open APIs: each solution exposes documented APIs. The M20 deliverables include endpoint tables for most solutions, and EDGE Data Storage documents its API with Swagger UI (D8.1 §3.6).
  • Loose coupling: solutions are microservices, each deployable independently as a Docker or Docker Compose unit (D6.1, D8.1, D10.1, D12.1).
  • Microservice conventions, taken from the marketplace design principles in D5.1 §3.1: stateless services; one database per component, with no shared databases; shared object storage allowed, with files passed by URL; documented JSON payloads instead of file transfer; a health endpoint returning HTTP 200 or an error code and message; a central registry of component endpoints; Single Sign-On for user interfaces and JWT for API calls.
  • Secure by design: D5.1 assigns authentication, authorisation and encryption of exchanged data to the secure messaging layer (see Security and Access).
  • Provenance where it matters: contracts are anchored on the MaaS Blockchain, and only the Smart Contracts Toolkit writes contracts to the ledger (D8.1 §6.5; see Smart contract origination).

The M20 deliverables document the following interfaces and protocols.

InterfaceBetweenProtocol and patternDocumented in
Marketplace APIProvider and consumer interfaces and agents towards CMM; CMM towards MDC, RS, the agents and MCHREST over HTTPS with JSON (Django REST Framework); CMM works with the agents through the agents’ REST APID6.1 §2.3, §5.5
Agent negotiation protocolMCA and MPA (both directions)MQTT over the PSM broker with mutual TLS and token-based access; JSON messages on discovery and bilateral negotiation topics, covering price, quantity and delivery date; agent-internal communication between orchestrator and child agents over XMPPD6.1 §5.2–5.3
ERP and MES connectorDI and enterprise ERP and MES systems (both directions)HTTP polling at a configurable interval and HTTP webhooks; CSV, JSON, XML or iDoc input, converted to ISA-95 JSON and written to DSD8.1 §2.2, §2.5
Secure messagingProvider and consumer systems, agents, IoT devices, desktop and mobile clients, through PSMMQTT on Eclipse Mosquitto 2 with mutual TLS; Keycloak-issued JWT validated by the broker; topic-level authorisation by roleD8.1 §4.3–4.5
Contract origination and ledgerCMM towards SCT; SCT towards MSBBusiness-event webhook with JSON payloads into SCT; SCT signs transactions (web3.py) and submits them to MSB through the Ethereum JSON-RPC over HTTPSD12.1 §6.2–6.3; D8.1 §6.4–6.5
IoT and digital twin ingestionShop-floor sensors towards DTD, CP and PMTPer solution: MQTT (Mosquitto 2) and Apache NiFi into DTD, with twin state held in Eclipse Ditto; Telegraf into InfluxDB 3 for CP; a Node-RED collector into TimescaleDB for PMTD10.1 §2.3, §3.3; D12.1 §4.3–4.4
Ontology and catalogue queryCMM towards MDCREST/JSON for catalogue filters, provider publication and search, which returns the list of matching providers; SPARQL is used inside MDC (Apache Jena Fuseki)D6.1 §3.5
KPI and analytics APIDA and other sources towards CPREST API of DA (FastAPI); CP accepts InfluxDB v3 HTTP writes (line protocol) and queries, and exposes Apache Superset charts and dashboards through RESTD10.1 §3.5, §4.5
EDGE Data Storage access APIDI, MCP, MPP, RMC, DIP and, as intended, PMT towards DSREST API generated by PostgREST for each ISA-95 table and documented with Swagger UI; bearer JWT with PostgreSQL row-level security; TLSD8.1 §3.3–3.6

CMM mediates between the catalogue and the recommendation service: it obtains the matching providers from MDC and passes the preselected alternatives and the decision criteria to RS, which ranks them (D6.1 §4.1, §4.5).

The tables below list the documented connections between solutions, grouped by area. Each connection is listed in the direction in which it is described; ‘both directions’ marks an exchange that goes both ways.

Discovery, ranking, negotiation and contract origination around the Cloud MaaS Marketplace (CMM).

FromToProtocol and patternData that travelsDocumented in
CMMMDCREST/JSONProvider capability publications, consumer search requests and catalogue filters; MDC returns the list of matching providersD6.1
CMMRSREST/JSONPreselected candidate resources with decision criteria and weights; RS returns a ranked shortlistD6.1
CMMMCA and MPA, through their orchestrator agents (both directions)REST/JSONAgreed terms returned to CMM; published resource notices, request candidates, deadlines, availability and costs, selected parties, and the start, terms and decision of each negotiationD6.1
MCAMPA, over the PSM broker (both directions)MQTT, mutual TLS and token-based accessOffers and counter-offers on price, quantity and delivery date until agreementD6.1; D8.1
CMMMCHREST/JSONOrder notification with the contract, provider, consumer, request and resource detailsD6.1
CMMSCTHTTP webhook, JSON (contract origination)The finalised agreement as a business event (action, entity identifier, value and metadata)D12.1; D6.1

The ledger, the EDGE Data Storage and the Digital Industrial Passport, and the solutions that read from or write to them.

FromToProtocol and patternData that travelsDocumented in
SCTMSBEthereum JSON-RPCSigned transactions, contract state reads and writes, provenance recordsD12.1; D8.1
DIDSREST via PostgREST, ISA-95 JSONERP and MES master and operational data, harmonised to ISA-95D8.1
DSRMCREST via PostgRESTMachine lists and status, calendar events and KPIs for remote monitoringD10.1; D8.1
PMTDS (both directions)REST and Node-RED (intended)Telemetry and machine status towards PMT; maintenance plans and shutdown windows back to DSD12.1
MPP and MCPDSREST via PostgREST, ISA-95 JSONScheduler input read from DS (calendar, resource types, work breakdown structure, operator expertise); scheduling plans written backD12.1
DIPDS (both directions)Shared PostgreSQL / RESTAsset look-up, correlation handling and blueprint loggingD8.1
MPADIPAPI (to be defined)Raw asset information and the instruction to start passport configurationD8.1

Digital twin, analytics, monitoring, workspace configuration, planning and simulation solutions.

FromToProtocol and patternData that travelsDocumented in
Shop-floor sensorsDTDMQTT and Apache NiFiReal-time shop-floor telemetry and asset feature valuesD10.1
DTDDAREST (intended)Live twin state and processed asset data for analytics and KPI computationD10.1
DACPREST; InfluxDB line protocol (intended)KPIs and analytics results for dashboardsD10.1
MWCDTDAPI (route to be defined)Asset and resource state, availability, tool readiness and workspace stateD10.1
MWCMaaS Booking servicesAPI (route to be defined)Job and booking input: job identifiers, product, quantity and due datesD10.1
MCAMCPAPI (planned)Request identifier, product type, quantity, target price and penalties; MCP returns the delivery date and the resources usedD12.1
MPAMPPAPI (planned)Request identifier, product type, quantity, target price and penalties; MPP returns the delivery date and the resources usedD12.1
SCSMCP and DSAPI (planned)Resilience hints and feedback: logistics bottlenecks, transport delays and warehouse utilisationD12.1
CMMCPAPI (intended; marketplace metrics)Marketplace metrics and provider and consumer interaction data for visualisationD10.1

The main types of data that travel on these connections:

DataTypical contentMain deliverables
ERP dataProduction orders, bill of materials and master data, calendar, resource types, work breakdown structure, operator expertiseD8.1; D12.1
MES dataProduction progress, operation status, produced quantities, shop-floor eventsD8.1
Sensor and IoT telemetryReal-time signals and time-series feature values from assetsD10.1; D12.1
Catalogue and ontologyService and capability descriptions, vocabulary, search criteria, candidate resourcesD6.1
Organisation, user and order dataOrganisations, users, facilities, resources, order requests and ranking criteria held by CMMD6.1
Negotiation log (off-chain)Offers (price, quantity, delivery date), utility values and negotiation roundsD6.1
Agreements and contractsAgreements, business events, on-chain transactions, provenance and audit recordsD8.1; D12.1
Life-cycle and passport dataPassport blueprints, asset lifecycle records, LCC and LCA valuesD8.1; D12.1
LCA and LCC inventoryEmission and cost factors, lifecycle inventoryD12.1
KPI measurementsKPI values and analytics outputsD10.1
  • Design intent: D5.1 (§3.1) calls for a central security mechanism with Single Sign-On for user interfaces and JWT for API calls, and assigns authentication, authorisation and encryption of exchanged data to the secure messaging layer (§3.3).
  • Identity: Keycloak with OpenID Connect is the identity and access management platform reported in D8.1 (§4) for the secure messaging stack.
  • Messaging: the secure messaging broker combines mutual TLS, Keycloak-issued tokens and topic-level access control (D8.1 §4; see Secure messaging and identity stack).
  • Ledger: only the Smart Contracts Toolkit writes to the MaaS Blockchain (D8.1 §6.5; see Smart contract origination).
  • Least privilege and data sovereignty: access respects the data owner’s control. In the first release this is realised through topic-level authorisation on the secure messaging broker (D8.1 §4), row-level security in EDGE Data Storage (D8.1 §3), and owner-only management of organisation content in CMM (D5.2).