IntegrationData Export

Data Export

Machine-state and BDE production data intervals exported from Novo AI — export fields, interval rules, write-back design, and configuration items for receiving systems.

Introduction

Novo AI exports two types of data to customer receiving systems: machine-state intervals describing how the machine behaved during a detected period, and BDE production intervals describing which production activity was performed. Both datasets share the machine/resource code and can be compared through their overlapping timestamps.

For shared integration concepts — stable identifiers, timestamps and timezones, units, connection methods, access and connectivity, validation rules, and the customer handover package — see Data Ingestion.

Machine-state data export

In the opposite direction, machine states and production times detected by Novo AI can be transferred to a customer receiving system. One record represents one continuous machine-state interval. A direct link to an ERP production order is not required for the initial machine-state export.

Customer-side requirement: provide a receiving table, API, or equivalent interface where Novo AI is allowed to create/update machine interval data. The implementation needs read/write capability or equivalent API operations for processing and verification.

Export fields

FieldStatusTypeExampleRequirement / notes
resource_codeRequiredStringMACHINE-12Stable machine/resource code matching the configured Novo AI resource.
resource_nameRequiredString5-Axis Milling Machine 12Human-readable resource name.
start_timeRequiredTimestamp2026-07-29T08:00:00+02:00Detected state start; timezone-aware timestamp preferred.
end_timeRequiredTimestamp2026-07-29T08:15:00+02:00Detected state end; must be later than start_time.
state_idRequiredStringIDLE-01Machine-state identifier. String supports numeric or alphanumeric models.
state_nameRequiredStringIDLEHuman-readable or canonical state label.
production_secondsRequiredInteger0Production duration within the interval, in seconds.
idle_secondsRequiredInteger900Idle duration within the interval, in seconds.
off_secondsRequiredInteger0Off duration within the interval, in seconds.
preparation_secondsRequiredInteger0Setup/preparation duration within the interval, in seconds.
unknown_secondsRequiredInteger0Unknown/unassigned duration within the interval, in seconds.
reason_idOptionalStringREASON-17Downtime/reason identifier if available.
reason_nameOptionalStringMaterial missingHuman-readable downtime/reason label.
energy_kwhOptionalDecimal0.85Energy consumption for the interval when measured and available.

State-duration rule

For each interval, only the duration column corresponding to the detected state should normally contain the interval duration. All other state-duration columns should contain 0. Durations must be non-negative integers.

resource_code: MACHINE-12
resource_name: 5-Axis Milling Machine 12
start_time: 2026-07-29T08:00:00+02:00
end_time: 2026-07-29T08:15:00+02:00
state_id: IDLE-01
state_name: IDLE
production_seconds: 0
idle_seconds: 900
off_seconds: 0
preparation_seconds: 0
unknown_seconds: 0
reason_id: REASON-17
reason_name: Material missing
energy_kwh: 0.85

The interval above lasts 900 seconds (15 minutes). The timestamps define its exact boundaries, while idle_seconds describes how the interval is classified for utilization and downtime analysis.

Write-back design items to agree

  • Target interface: database table/view, API endpoint, message interface, or file exchange.
  • Authentication and network path: credentials, VPN, allowlisting, certificates, or other customer security controls.
  • Insert/update behavior: duplicate handling and, when required, a stable interval key or interface-specific uniqueness rule.
  • Retention and correction behavior: whether previously written intervals may later be corrected or reclassified.
  • Receiving-system validation: how the customer team confirms that timestamps, machine mappings, and durations are stored correctly.

BDE production data export

In addition to machine states, production data recorded by operators in Novo AI can be transferred to a customer receiving system. One record represents one continuous production or preparation interval linked to a machine assignment. When available, the record also includes the related order, work order, operation, product, and operator information.

Customer-side requirement: provide a receiving table, API, or equivalent interface where Novo AI is allowed to create/update BDE interval data. The implementation needs read/write capability or equivalent operations for processing and verification.

Export fields

FieldStatusTypeExampleRequirement / notes
bde_interval_idRequiredStringBDE-84721Stable identifier of the production or preparation interval.
assignment_idRequiredStringASSIGNMENT-931Stable identifier of the related machine assignment.
resource_codeRequiredStringMACHINE-12Stable machine/resource code matching the configured Novo AI resource.
resource_nameRequiredString5-Axis Milling Machine 12Human-readable resource name.
interval_typeRequiredStringproductionInterval classification. Supported values are production and preparation.
start_timeRequiredTimestamp2026-08-27T08:00:00+02:00Start of the recorded activity; timezone-aware timestamp preferred.
end_timeOptionalTimestamp2026-08-27T09:15:00+02:00End of the recorded activity. May be empty while the interval is ongoing.
assignment_statusRequiredStringin_progressCurrent assignment status, such as planned, in_progress, completed, hold, unplanned, or cancelled.
assignment_roleOptionalStringprimaryAssignment role, such as primary, secondary, or parallel.
operator_idOptionalStringOPERATOR-42Identifier of the assigned operator when available.
operator_nameOptionalStringMaria SchmidtHuman-readable operator name.
order_idOptionalStringORDER-201Novo AI order identifier.
external_order_idOptionalStringERP-4500123Order identifier from the customer ERP system.
order_nameOptionalStringCustomer order 4500123Human-readable order name.
work_order_idOptionalStringWORK-ORDER-301Novo AI work-order identifier.
external_work_order_idOptionalStringERP-WO-10Work-order identifier from the customer system.
operation_idOptionalStringOPERATION-401Novo AI operation identifier.
external_operation_idOptionalStringERP-OP-20Operation identifier from the customer system.
operation_sequenceOptionalString20Sequence of the operation within the work order.
operation_descriptionOptionalStringMillingHuman-readable operation description.
product_idOptionalStringPRODUCT-501Novo AI product identifier.
external_product_idOptionalStringPART-4711Product or material identifier from the customer system.
product_nameOptionalStringHousingHuman-readable product name.
planned_quantityOptionalDecimal100Planned quantity of the related machine assignment.
produced_quantityRequiredDecimal25Quantity produced during the interval.
scrap_quantityOptionalDecimal1Scrap quantity reported for the interval.
rework_quantityOptionalDecimal0Rework quantity reported for the interval.
quantity_unitOptionalStringpcsUnit used for the reported quantities.
is_cumulativeOptionalBooleanfalseIndicates whether the reported quantities are cumulative or belong only to this interval.
updated_atOptionalTimestamp2026-08-27T09:17:20+02:00Time of the latest update or correction.

BDE interval rule

Each record should represent one continuous production or preparation interval for one machine assignment. The end_time must be later than the start_time. An ongoing interval may temporarily have no end_time.

bde_interval_id: BDE-84721
assignment_id: ASSIGNMENT-931
resource_code: MACHINE-12
resource_name: 5-Axis Milling Machine 12
interval_type: production
start_time: 2026-08-27T08:00:00+02:00
end_time: 2026-08-27T09:15:00+02:00
assignment_status: in_progress
assignment_role: primary
operator_id: OPERATOR-42
operator_name: Maria Schmidt
external_order_id: ERP-4500123
order_name: Customer order 4500123
external_work_order_id: ERP-WO-10
external_operation_id: ERP-OP-20
operation_sequence: 20
operation_description: Milling
external_product_id: PART-4711
product_name: Housing
planned_quantity: 100
produced_quantity: 25
scrap_quantity: 1
rework_quantity: 0
quantity_unit: pcs
is_cumulative: false
updated_at: 2026-08-27T09:17:20+02:00

The interval above represents 75 minutes of production on MACHINE-12. It is linked to the customer order, work order, operation, product, and assigned operator. During this interval, the operator reported 25 produced parts and 1 scrap part.

BDE export items to agree

  • Included information: which order, work-order, operation, product, operator, quantity, and assignment fields are required.
  • Identifier mapping: which Novo AI and customer ERP identifiers should be transferred.
  • Ongoing intervals: whether intervals without an end_time should be transferred.
  • Quantity behavior: whether quantities are interval-specific or cumulative.
  • Corrections: how later changes to times, quantities, assignments, or statuses should be transferred.
  • Operator information: whether operator identifiers and names may be included.
  • Target interface: database table/view, API endpoint, message interface, or file exchange.
  • Receiving-system validation: how the customer confirms that assignments, identifiers, timestamps, and quantities are stored correctly.

Relationship between machine-state and BDE data

Machine-state intervals and BDE intervals remain separate. Machine-state data describes how the machine behaved, while BDE data describes which production activity was performed. Both datasets can be compared using the machine/resource and their overlapping timestamps.