Sending process data

Process data describe one process for one part, for example one tightening. They contain the result of the process, the program and the curves that were recorded. Process data are shown in the process analysis.

The message format is based on the Open Production Protocol (OPP) version 1.

Prerequisites

  • The device exists in the configuration with a Technical ID, for example cnc1-1.

  • The measuring points of the curves exist and are assigned to the device type, for example time and torque. You need them to select the axes in the process analysis.

  • A technical client with the permission measurements:write. See Authentication.

Request

POST /data-ingest/api/v1/tenants/{tenantId}/ingest HTTP/1.1
Host: <sot-host>
Authorization: Bearer <access token>
Content-Type: application/json
X-Message-Type: process
X-Api-Version: 1.0
{
  "reference": {
    "identifier": "cnc1-1",
    "type": 0
  },
  "part": {
    "identifier": "1792070811329",
    "typeNumber": "Part Type 2",
    "partResult": 5
  },
  "processContent": {
    "processStartTimestamp": "2026-10-16T10:15:00Z",
    "result": "nok",
    "program": {
      "id": "2",
      "name": "Test Program 42"
    },
    "measurements": [
      {
        "name": "tightening",
        "phaseId": "1",
        "result": "nok",
        "timestamp": "2026-10-16T10:15:00Z",
        "series": [
          { "name": "time", "xAxis": true, "values": [0, 0.5, 1.0, 1.5, 2.0] },
          { "name": "torque", "values": [0, 4.2, 8.9, 12.4, 3.1] }
        ],
        "specialValues": [
          {
            "name": "shutoff",
            "seriesValues": [
              { "seriesName": "time", "value": 1.5 },
              { "seriesName": "torque", "value": 12.4 }
            ]
          }
        ]
      }
    ]
  }
}

The service answers with 202 Accepted. A few seconds later, the process is shown in the process analysis of the device.

Message format

Field Required Description

reference.identifier

yes

Technical ID of the device. Maximum 80 characters.

reference.type

yes

Use 0 (device). Process data for other reference types are rejected.

part.identifier

no

Part ID, shown as Part ID. Maximum 80 characters.

part.typeNumber

yes, if part is set

Part type, shown as Part Type ID. Maximum 80 characters.

part.partResult

no

Result of the part: 4 OK, 5 NOK. Further values: 0 no part, 1 not for station, 2 new part, 3 part in process, 6 write part, 7 result written, 8 rework part, 9 part not found, 10 part for processing, 11 part found. Only 5 counts as deviation.

processContent.processStartTimestamp

yes

Start of the process in UTC, ISO 8601.

processContent.result

no

Result of the process: ok, nok or unknown.

processContent.program

no

Program: id (required, maximum 36 characters, shown as Program ID), name (shown as Program Name) and lastChangedTimestamp.

processContent.measurements

yes

At least one measurement, for example one per process phase.

measurements[].name, phaseId, result

no

Name, phase and result of the measurement.

measurements[].timestamp

yes

Time of the measurement in UTC, ISO 8601.

measurements[].series

yes

Curves of the measurement. Every series has a name and values (up to 10,000 numbers or null). Values at the same position belong together. Name a time-based series time. Set xAxis to true for the series that should be used as X axis.

measurements[].specialValues

no

Points of interest of the curve, for example shutoff or turningPoint. Every special value has a name and one value per series.

processContent.customExtension

no

Additional data as JSON object.

The complete request must not be larger than 1 MiB. For very long curves, reduce the sampling rate.

Verifying the result

  1. In the menu, click Devices and open the device.

  2. Check that the Process Analysis shows the new process with the right result. See Process analysis.

  3. Click the process and check the curve.

Prozessdaten senden

Prozessdaten beschreiben einen Prozess für ein Teil, zum Beispiel eine Verschraubung. Sie enthalten das Ergebnis des Prozesses, das Programm und die aufgezeichneten Kurven. Prozessdaten erscheinen in der Prozessanalyse.

Das Nachrichtenformat basiert auf dem Open Production Protocol (OPP), Version 1.

Voraussetzungen

  • Das Gerät ist in der Konfiguration angelegt und hat eine Technische ID (Technical ID), zum Beispiel cnc1-1.

  • Die Messpunkte der Kurven sind angelegt und dem Gerätetyp zugeordnet, zum Beispiel time und torque. Sie werden für die Auswahl der Achsen in der Prozessanalyse benötigt.

  • Ein technischer Client mit der Berechtigung measurements:write. Siehe Authentifizierung.

Anfrage

POST /data-ingest/api/v1/tenants/{tenantId}/ingest HTTP/1.1
Host: <sot-host>
Authorization: Bearer <access token>
Content-Type: application/json
X-Message-Type: process
X-Api-Version: 1.0
{
  "reference": {
    "identifier": "cnc1-1",
    "type": 0
  },
  "part": {
    "identifier": "1792070811329",
    "typeNumber": "Part Type 2",
    "partResult": 5
  },
  "processContent": {
    "processStartTimestamp": "2026-10-16T10:15:00Z",
    "result": "nok",
    "program": {
      "id": "2",
      "name": "Test Program 42"
    },
    "measurements": [
      {
        "name": "tightening",
        "phaseId": "1",
        "result": "nok",
        "timestamp": "2026-10-16T10:15:00Z",
        "series": [
          { "name": "time", "xAxis": true, "values": [0, 0.5, 1.0, 1.5, 2.0] },
          { "name": "torque", "values": [0, 4.2, 8.9, 12.4, 3.1] }
        ],
        "specialValues": [
          {
            "name": "shutoff",
            "seriesValues": [
              { "seriesName": "time", "value": 1.5 },
              { "seriesName": "torque", "value": 12.4 }
            ]
          }
        ]
      }
    ]
  }
}

Der Dienst antwortet mit 202 Accepted. Wenige Sekunden später zeigt die Prozessanalyse des Geräts den Prozess an.

Nachrichtenformat

Feld Pflicht Beschreibung

reference.identifier

ja

Technische ID des Geräts. Maximal 80 Zeichen.

reference.type

ja

0 (Gerät) verwenden. Prozessdaten für andere Referenztypen werden abgelehnt.

part.identifier

nein

Teile-ID, angezeigt als Teile-ID (Part ID). Maximal 80 Zeichen.

part.typeNumber

ja, wenn part gesetzt ist

Teiletyp, angezeigt als Teiletyp-ID (Part Type ID). Maximal 80 Zeichen.

part.partResult

nein

Ergebnis des Teils: 4 OK, 5 NOK. Weitere Werte: 0 kein Teil, 1 nicht für diese Station, 2 neues Teil, 3 Teil in Bearbeitung, 6 Teil schreiben, 7 Ergebnis geschrieben, 8 Nacharbeitsteil, 9 Teil nicht gefunden, 10 Teil zur Bearbeitung, 11 Teil gefunden. Nur 5 zählt als Abweichung.

processContent.processStartTimestamp

ja

Beginn des Prozesses in UTC, ISO 8601.

processContent.result

nein

Ergebnis des Prozesses: ok, nok oder unknown.

processContent.program

nein

Programm: id (Pflicht, maximal 36 Zeichen, angezeigt als Programm-ID (Program ID)), name (angezeigt als Programmname (Program Name)) und lastChangedTimestamp.

processContent.measurements

ja

Mindestens eine Messung, zum Beispiel eine je Prozessphase.

measurements[].name, phaseId, result

nein

Name, Phase und Ergebnis der Messung.

measurements[].timestamp

ja

Zeitpunkt der Messung in UTC, ISO 8601.

measurements[].series

ja

Kurven der Messung. Jede Reihe hat einen name und values (bis zu 10.000 Zahlen oder null). Werte an derselben Position gehören zusammen. Eine zeitbasierte Reihe time nennen. Für die Reihe, die als X-Achse dient, xAxis auf true setzen.

measurements[].specialValues

nein

Markante Punkte der Kurve, zum Beispiel shutoff oder turningPoint. Jeder Sonderwert hat einen name und einen Wert je Reihe.

processContent.customExtension

nein

Zusätzliche Daten als JSON-Objekt.

Die gesamte Anfrage darf nicht größer als 1 MiB sein. Bei sehr langen Kurven die Abtastrate verringern.

Ergebnis prüfen

  1. Im Menü auf Geräte (Devices) klicken und das Gerät öffnen.

  2. Prüfen, ob die Prozessanalyse (Process Analysis) den neuen Prozess mit dem richtigen Ergebnis zeigt. Siehe Prozessanalyse.

  3. Auf den Prozess klicken und die Kurve prüfen.

Diese Seite bearbeiten Edit this page

Feedback on this pageFeedback zu dieser Seite