Nexeed

Data Publisher

    • Introduction
    • User manual
      • Processing chains
      • Endpoints
    • Developer documentation
      • Concepts
      • Getting started
      • How-to
        • Register your module
        • Provide your data
    • API documentation
    • Glossary
Data Publisher
  • Industrial Application System
  • Core Services
    • Block Management
    • Deviation Processor
    • ID Builder
    • Multitenant Access Control
    • Notification Service
    • Reporting Management
    • Ticket Management
    • Web Portal
  • Shopfloor Management
    • Andon Live
    • Global Production Overview
    • KPI Reporting
    • Operational Routines
    • Shift Book
    • Shopfloor Management Administration
  • Product & Quality
    • Product Setup Management
    • Part Traceability
    • Process Quality
    • Setup Specs
  • Execution
    • Line Control
    • Material Management
    • Order Management
    • Packaging Control
    • Rework Control
  • Intralogistics
    • AGV Control Center
    • Stock Management
    • Transport Management
  • Machine & Equipment
    • Condition Monitoring
    • Device Portal
    • Maintenance Management
    • Tool Management
  • Enterprise & Shopfloor Integration
    • Archiving Bridge
    • Data Publisher
    • Direct Data Link
    • Engineering UI
    • ERP Connectivity
    • Gateway
    • Information Router
    • Master Data Management
    • Orchestrator
Nexeed Learning Portal
  • Data Publisher
  • Developer documentation
  • How-to
  • Register your module
✎

Register in Data Publisher

Data Publisher provides a REST API to perform the module registration.

A NuGet package and a Spring Starter, which use this API, are also provided to simplify the registration process for .NET and Java modules respectively.

Nuget package for .Net modules

Currently only available in BCI

To perform the registration in Data Publisher, .NET modules can use the "Nexeed.DataPublisher.ModuleRegistrationClient" NuGet package to simplify the process.

To use it:

  • Include the Nexeed.DataPublisher.ModuleRegistrationClient in your project

  • Make sure you are using Bosch.Foundation.OpenId.Authentication.Client with named clients in your configuration.

Example:

"OIDC": {
    // Your OIDC configuration
    // ...
    "NamedHttpClients": {
    "DefaultTokenEndpoint": "https://foundation-4.devspace.bosch-nexeed.com/iam/access-management/v1/tenants/7311ea8c-5d48-43fe-acf9-980eedf24b6c/openid-connect/token",
    "Clients": {
        "datapublisher": {
        "ClientID": "1quv47ifb39pb1a0ve7x4xqekk", // "$(<myModule>_CLIENT_ID)"
        "ClientSecret": "20400c09-4f2c-4603-b77b-0502653f479d", // "$(<myModule>_CLIENT__SECRET)"
        "BaseAddress": "https://foundation-4.devspace.boschnexeed.com/datapublisher/", // '{{ include "utility-toolkit.moduleUrl" (list ."datapublisher") }}'
        "AuthenticationServerURL": "https://foundation-4.devspace.bosch-nexeed.com/iam/access-management/v1/tenants/7311ea8c-5d48-43fe-acf9-980eedf24b6c",
        "HttpsRequired": true,
        "Scopes": [ "aud:z3mq9fy35n416v8wsbmi52zl" ] // "aud:$(DATAPUBLISHER_CLIENT_ID)"
        }
    }
    }
}
  • Add the client to your serviceCollection by calling the following:

// Authenticated Clients: Bosch.Foundation.OpenId
builder.Services.AddAuthenticatedHttpClients(builder.Configuration);
builder.Services.AddRegistrationClient(builder.Configuration.GetSection(nameof(RegistrationClientSettings)));
  • The client needs to be configured. Its settings can be passed as typed settings (RegistrationClientSettings), as Action, or as a ConfigurationSection.

Example:

"RegistrationClientSettings": {
    "Name": "RegistrationDemoModule", // myModule
    "ApplicationId": "1quv47ifb39pb1a0ve7x4xqekk", // "$(<myModule>_CLIENT_ID)"
    "RootTenantId": "7311ea8c-5d48-43fe-acf9-980eedf24b6c", // "{{.Values.global.nexeedMacmaTenant0Id }}"
    "HttpClientName": "datapublisher", // MUST match the one in NamedHttpClients section
    "ActivationConfig": {
        "Mode": 1,
        "Url": "https://host.com:9090/api/v1/7311ea8c-5d48-43fe-acf9-980eedf24b6c/domain-events/activation", // '{{ include "utility-toolkit.moduleUrl" (list . "<myModule>") }}/api/v1/7311ea8c-5d48-43fe-acf9-980eedf24b6c/domainevents/activation'
        "ExchangeName": null
    },
    "DataTypes": [
    {
        "Name": "test_1",
        "Version": "1.0.0",
        "ExchangeName": "x.nexeed.ias.myModule.{tenantId}.entity-1.v1",
        "VHostName" : "/"
        "Schema": null // JSON schema
        "NameLocalization": {
            "de-DE": "test 1 de",
            "en-US": "test 1 en"
        }
    }
    ]
}

Spring Starter for Java modules

Currently only available in BCI

To perform the registration in Data Publisher, Java modules can use the "dpspringclient" Spring Starter to simplify the process.

To use it:

  • Add "dpspringclient" Spring Starter dependency to your project

  • Register your module with the relevant data - tenant id, module id (Multitenant Access Control public client id) and the module name with the list of data types - after startup by calling the following method:

dpSpringClient.registerModule( dpSpringClientProperties.getZeroTenantId(), moduleId, dpSpringClientModuleDto );

Contents

© Robert Bosch Manufacturing Solutions GmbH 2023-2025, all rights reserved

Changelog Corporate information Legal notice Data protection notice Third party licenses