Remberg work-orders API
The work-orders API from Remberg — 12 operation(s) for work-orders.
The work-orders API from Remberg — 12 operation(s) for work-orders.
openapi: 3.0.0
info:
title: AI ai-chat work-orders API
description: The remberg AI API description
version: v1
contact: {}
servers:
- url: https://api.remberg.de
tags:
- name: work-orders
paths:
/v2/work-orders:
get:
description: Returns a paginated list of Work Orders. Supports filtering and sorting via query parameters.
operationId: /v2/work-orders_get
parameters:
- name: page
required: false
in: query
description: Page number.
schema:
type: number
- name: limit
required: false
in: query
description: Define how many items will be received in the payload per request.(default 20 items, max 1000 items)
schema:
type: number
- name: relatedOrganizationNumber
required: false
in: query
description: Filter by specifying a related organization number.
schema:
type: string
- name: parentWorkOrderExternalReference
required: false
in: query
description: Filter by specifying the parent work order external reference (ERP Reference). Provide either this or the parentWorkOrderId.
schema:
type: string
- name: parentWorkOrderId
required: false
in: query
description: Filter by specifying the parent work order internal ID. Provide either this or the parentWorkOrderExternalReference
schema:
type: string
- name: statusReference
required: false
in: query
description: Filter by the status reference of the work order.
schema:
type: string
- name: typeReference
required: false
in: query
description: Filter by the type reference of the work order.
schema:
type: string
- name: statusCompleted
required: false
in: query
description: Filter by the completed state of the work order.
schema:
type: boolean
- name: updatedAtFrom
required: false
in: query
description: Filter by updatedAt date FROM the provided value as an ISO UTC string. Inclusive.
schema:
format: date-time
example: '2023-12-10T10:00:00.000Z'
type: string
- name: updatedAtUntil
required: false
in: query
description: Filter by a updatedAt date UNTIL the provided value as an ISO UTC string. Inclusive.
schema:
format: date-time
example: '2023-12-10T10:00:00.000Z'
type: string
- name: createdAtFrom
required: false
in: query
description: Filter by createdAt date FROM the provided value as an ISO UTC string. Inclusive.
schema:
format: date-time
example: '2023-12-10T10:00:00.000Z'
type: string
- name: createdAtUntil
required: false
in: query
description: Filter by a createdAt date UNTIL the provided value as an ISO UTC string. Inclusive.
schema:
format: date-time
example: '2023-12-10T10:00:00.000Z'
type: string
- name: dueDateFrom
required: false
in: query
description: Filter by dueDate FROM the provided value as an ISO UTC string. Inclusive.
schema:
format: date-time
example: '2023-12-10T10:00:00.000Z'
type: string
- name: dueDateUntil
required: false
in: query
description: Filter by a dueDate UNTIL the provided value as an ISO UTC string. Inclusive.
schema:
format: date-time
example: '2023-12-10T10:00:00.000Z'
type: string
responses:
'200':
description: List of Work Orders objects
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrdersCfaFindManyResponseDto'
'400':
description: Bad Request
'403':
description: Forbidden
security:
- authorization: []
summary: Get a list of Work Orders
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
post:
description: Creates a new Work Order with the provided properties and returns its ID.
operationId: /v2/work-orders_post
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaCreateOneBodyDto'
responses:
'201':
description: Resource created
content:
application/json:
schema:
type: string
'400':
description: Bad Request
'403':
description: Forbidden
security:
- authorization: []
summary: Create a new WorkOrder
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/{id}:
get:
description: Returns a single Work Order identified by its internal ID, including all its properties and optional populated references.
operationId: /v2/work-orders/{id}_get
parameters:
- name: id
required: true
in: path
description: The Work Order's internal ID
schema:
type: string
- name: associations
required: false
in: query
description: Define which associations should be included in the response.
schema:
type: array
items:
type: string
enum:
- relatedOrganization
- relatedAssets
- customProperties
responses:
'200':
description: Work Order retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaResponseDto'
'403':
description: Forbidden
'404':
description: Not Found
security:
- authorization: []
summary: Get a Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
patch:
description: Partially updates an existing Work Order identified by its internal ID. Only the fields provided in the request body will be modified.
operationId: /v2/work-orders/{id}_patch
parameters:
- name: id
required: true
in: path
description: The internal ID of the work order
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaUpdateOneBodyDto'
responses:
'204':
description: Resource updated
content:
application/json:
schema:
type: string
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found
security:
- authorization: []
summary: Update a Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
delete:
description: Permanently deletes an existing Work Order identified by its internal ID. This action cannot be undone.
operationId: /v2/work-orders/{id}_delete
parameters:
- name: id
required: true
in: path
description: The Work Order's internal ID
schema:
type: string
responses:
'204':
description: Work Order deleted
'400':
description: Bad Request
'403':
description: Forbidden
'409':
description: More than one Work Order with the same external reference (ERP reference) was found
security:
- authorization: []
summary: Delete an Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/erp/{externalReference}:
get:
description: Returns a single Work Order identified by its external reference (ERP reference), including all its properties and optional populated references. Returns 409 if multiple Work Orders share the same external reference.
operationId: /v2/work-orders/erp/{externalReference}_get
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
- name: associations
required: false
in: query
description: Define which associations should be included in the response.
schema:
type: array
items:
type: string
enum:
- relatedOrganization
- relatedAssets
- customProperties
responses:
'200':
description: Work Order retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaResponseDto'
'403':
description: Forbidden
'404':
description: Not Found
'409':
description: More than one Work Order with the same external reference (ERP reference) was found
security:
- authorization: []
summary: Get a Work Order by its external reference (ERP Reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
patch:
description: Partially updates an existing Work Order identified by its external reference (ERP reference). Only the fields provided in the request body will be modified. Returns 409 if multiple Work Orders share the same external reference.
operationId: /v2/work-orders/erp/{externalReference}_patch
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaUpdateOneBodyDto'
responses:
'204':
description: Resource updated
content:
application/json:
schema:
type: string
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found
'409':
description: Conflict (e.g., invalid updates or duplicate references)
security:
- authorization: []
summary: Update a Work Order by its external reference (ERP reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
delete:
description: Permanently deletes an existing Work Order identified by its external reference (ERP reference). Returns 409 if multiple Work Orders share the same external reference. This action cannot be undone.
operationId: /v2/work-orders/erp/{externalReference}_delete
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
responses:
'204':
description: Work Order deleted
'400':
description: Bad Request
'403':
description: Forbidden
'409':
description: More than one Work Order with the same external reference (ERP reference) was found
security:
- authorization: []
summary: Delete an Work Order by its external reference (ERP reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/{id}/checklist:
post:
description: Adds one or more checklist items to an existing Work Order identified by its internal ID.
operationId: /v2/work-orders/{id}/checklist_post
parameters:
- name: id
required: true
in: path
description: The internal ID of the work order
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaCreateManyChecklistItemsBodyDto'
responses:
'201':
description: Resources created
content:
application/json:
schema:
type: string
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found
security:
- authorization: []
summary: Add checklist items to a Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/erp/{externalReference}/checklist:
post:
description: Adds one or more checklist items to an existing Work Order identified by its external reference (ERP reference). Returns 409 if multiple Work Orders share the same external reference.
operationId: /v2/work-orders/erp/{externalReference}/checklist_post
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaCreateManyChecklistItemsBodyDto'
responses:
'201':
description: Resources created
content:
application/json:
schema:
type: string
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found
security:
- authorization: []
summary: Add checklist items to a Work Order by its external Reference (ERP reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/{id}/times:
get:
description: Returns the time entries associated with a Work Order identified by its internal ID.
operationId: /v2/work-orders/{id}/times_get
parameters:
- name: id
required: true
in: path
description: The internal ID of the work order
schema:
type: string
responses:
'200':
description: Work Order times retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderTimesCfaResponseDto'
'403':
description: Forbidden
'404':
description: Not Found
security:
- authorization: []
summary: Get time entries for a Work Order
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/{id}/stock-changes:
get:
description: Returns a paginated list of part stock changes associated with a Work Order identified by its internal ID.
operationId: /v2/work-orders/{id}/stock-changes_get
parameters:
- name: id
required: true
in: path
description: The internal ID of the work order
schema:
type: string
- name: page
required: false
in: query
description: Page number
schema:
default: 0
type: number
- name: limit
required: false
in: query
description: Number of items per page (default 20, max 1000)
schema:
default: 20
type: number
responses:
'200':
description: Stock changes retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrdersCfaPartStockChangesFindManyResponseDto'
'403':
description: Forbidden
'404':
description: Not Found
security:
- authorization: []
summary: Get stock changes for a Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
post:
description: Creates a new part stock change entry (e.g. planned, reserved, or taken) for the Work Order identified by its internal ID.
operationId: /v2/work-orders/{id}/stock-changes_post
parameters:
- name: id
required: true
in: path
description: The Work Order's internal ID
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrdersCfaPartStockChangeCreateOneBodyDto'
responses:
'201':
description: Stock change created
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrdersCfaPartStockChangeCreateOneResponseDto'
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found
security:
- authorization: []
summary: Create a PartStockChange for a Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/erp/{externalReference}/stock-changes:
get:
description: Returns a paginated list of part stock changes associated with a Work Order identified by its external reference (ERP reference). Returns 409 if multiple Work Orders share the same external reference.
operationId: /v2/work-orders/erp/{externalReference}/stock-changes_get
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
- name: page
required: false
in: query
description: Page number
schema:
default: 0
type: number
- name: limit
required: false
in: query
description: Number of items per page (default 20, max 1000)
schema:
default: 20
type: number
responses:
'200':
description: Stock changes retrieved
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrdersCfaPartStockChangesFindManyResponseDto'
'403':
description: Forbidden
'404':
description: Not Found
'409':
description: More than one Work Order with the same external reference (ERP reference) was found
security:
- authorization: []
summary: Get stock changes for a Work Order by its external reference (ERP Reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
post:
description: Creates a new part stock change entry (e.g. planned, reserved, or taken) for the Work Order identified by its external reference (ERP reference). Returns 409 if multiple Work Orders share the same external reference.
operationId: /v2/work-orders/erp/{externalReference}/stock-changes_post
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrdersCfaPartStockChangeCreateOneBodyDto'
responses:
'201':
description: Stock change created
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrdersCfaPartStockChangeCreateOneResponseDto'
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found
'409':
description: More than one Work Order with the same external reference (ERP reference) was found
security:
- authorization: []
summary: Create a PartStockChange for a Work Order by its external reference (ERP Reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/{id}/procedures:
post:
description: Adds a Procedure Template as a new procedure instance to an existing Work Order identified by its internal ID. Per-type procedure limits are enforced by the Work Order. Returns the id of the created procedure instance.
operationId: /v2/work-orders/{id}/procedures_post
parameters:
- name: id
required: true
in: path
description: The Work Order's internal ID
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaAddProcedureBodyDto'
responses:
'201':
description: Procedure added
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaAddProcedureResponseDto'
'400':
description: Bad Request (malformed id, or per-type procedure limit reached)
'403':
description: Forbidden
'404':
description: Not Found (missing Work Order or Procedure Template)
security:
- authorization: []
summary: Add a procedure to a Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/erp/{externalReference}/procedures:
post:
description: Adds a Procedure Template as a new procedure instance to an existing Work Order identified by its external reference (ERP reference). Per-type procedure limits are enforced by the Work Order. Returns 409 if multiple Work Orders share the same external reference.
operationId: /v2/work-orders/erp/{externalReference}/procedures_post
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaAddProcedureBodyDto'
responses:
'201':
description: Procedure added
content:
application/json:
schema:
$ref: '#/components/schemas/WorkOrderCfaAddProcedureResponseDto'
'400':
description: Bad Request (malformed id, or per-type procedure limit reached)
'403':
description: Forbidden
'404':
description: Not Found (missing Work Order or Procedure Template)
'409':
description: More than one Work Order with the same external reference (ERP reference) was found
security:
- authorization: []
summary: Add a procedure to a Work Order by its external reference (ERP reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/{id}/procedures/{procedureInstanceId}:
delete:
description: 'Removes a procedure instance from an existing Work Order identified by its internal ID. Idempotent: returns 204 even if the procedure instance is not attached to the Work Order.'
operationId: /v2/work-orders/{id}/procedures/{procedureInstanceId}_delete
parameters:
- name: id
required: true
in: path
description: The Work Order's internal ID
schema:
type: string
- name: procedureInstanceId
required: true
in: path
description: The internal ID of the procedure instance to remove
schema:
type: string
responses:
'204':
description: Procedure removed
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found (missing Work Order)
security:
- authorization: []
summary: Remove a procedure from a Work Order by its internal ID
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
/v2/work-orders/erp/{externalReference}/procedures/{procedureInstanceId}:
delete:
description: 'Removes a procedure instance from an existing Work Order identified by its external reference (ERP reference). Idempotent: returns 204 even if the procedure instance is not attached to the Work Order. Returns 409 if multiple Work Orders share the same external reference.'
operationId: /v2/work-orders/erp/{externalReference}/procedures/{procedureInstanceId}_delete
parameters:
- name: externalReference
required: true
in: path
description: The Work Order's external reference (ERP reference). Must be URL encoded.
schema:
example: '"#ext ref" should be queried as "%23ext%20ref"'
type: string
- name: procedureInstanceId
required: true
in: path
description: The internal ID of the procedure instance to remove
schema:
type: string
responses:
'204':
description: Procedure removed
'400':
description: Bad Request
'403':
description: Forbidden
'404':
description: Not Found (missing Work Order)
'409':
description: More than one Work Order with the same external reference (ERP reference) was found
security:
- authorization: []
summary: Remove a procedure from a Work Order by its external reference (ERP reference)
tags:
- work-orders
x-controller-class: WorkOrdersCfaController
components:
schemas:
CustomPropertyValueCfaResponseDto:
type: object
properties:
reference:
type: string
description: The reference of the custom property the value is assigned to
value:
type: object
description: The value of the custom property
associationValue:
description: The populated related object value if "customProperties" is present in "associations" query
type: array
items:
oneOf:
- $ref: '#/components/schemas/AssetInfoCfaResponseDto'
- $ref: '#/components/schemas/ContactInfoCfaResponseDto'
- $ref: '#/components/schemas/OrganizationInfoCfaResponseDto'
required:
- reference
- value
WorkOrderCfaCreateManyChecklistItemsBodyDto:
type: object
properties:
checklist:
type: array
items:
$ref: '#/components/schemas/WorkOrderCfaCreateManyChecklistItemBodyDto'
required:
- checklist
WorkOrderTimesCfaResponseDto:
type: object
properties:
totalDurationInSeconds:
type: number
description: The total duration of the time entries in seconds.
timeEntries:
type: array
items:
$ref: '#/components/schemas/WorkOrderTimeEntryCfaResponseDto'
required:
- totalDurationInSeconds
- timeEntries
WorkOrderCfaResponseDto:
type: object
properties:
id:
type: string
description: The work order's internal ID
createdAt:
type: string
format: date-time
description: The work order's creation date
updatedAt:
type: string
format: date-time
description: The work order's date of the last update as an ISO UTC string
example: '2025-01-15T10:00:00.000Z'
counter:
type: string
description: The work order's counter
createdByType:
type: string
enum:
- user
- apiKey
- system
- maintenancePlan
- userViaWorkRequest
- other
description: Indicates how the work order was created
example: userViaWorkRequest
subject:
type: string
description: The work order's subject
description:
type: string
description: The work order's description
startDate:
type: string
format: date-time
description: The work order's planning start date as an ISO UTC string
example: '2025-01-15T10:00:00.000Z'
endDate:
type: string
format: date-time
description: The work order's planning end date as an ISO UTC string
example: '2025-01-15T10:00:00.000Z'
dueDate:
type: string
format: date
description: The work order's due date as an ISO 8601 string
example: '2025-01-15'
parentWorkOrderId:
type: string
description: The work order's parent work order internal ID
location:
description: The work order's location
allOf:
- $ref: '#/components/schemas/AddressCfaResponseDto'
priority:
type: string
enum:
- 000_low
- 010_normal
- 020_high
- 030_critical
description: The work order's priority
externalReference:
type: string
description: The work order's external reference
relatedOrganizationId:
type: string
description: The asset's manufacturer organization internal ID
relatedOrganization:
description: The asset's manufacturer organization (only if relatedOrganization is included in associations)
allOf:
- $ref: '#/components/schemas/OrganizationInfoCfaResponseDto'
relatedAssetIds:
description: The work order's related asset internal IDs
type: array
items:
type: string
relatedAssets:
description: The work order's related assets (only if relatedAssets is included in associations)
type: array
items:
$ref: '#/components/schemas/AssetInfoCfaResponseDto'
relatedTicketId:
type: string
description: The work order's related ticket internal ID
relatedCaseId:
type: string
description: This field is deprecated, use relatedTicketId instead. The work order's related ticket internal ID.
typeReference:
type: string
description: The work order's type reference
statusReference:
type: string
description: The work order's status reference
customPropertyValues:
description: The work order's custom properties
type: array
items:
$ref: '#/components/schemas/CustomPropertyValueCfaResponseDto'
assignedContactIds:
description: The work order's performing contact internal IDs
type: array
items:
type: string
assignedGroupIds:
description: The work order's performing group internal IDs
type: array
items:
type: string
responsibleGroupId:
type: string
description: The work order's responsible group internal ID
responsibleContactId:
type: string
description: The work order's responsible contact internal ID
totalDurationInSeconds:
type: number
description: The work order's total duration in seconds
estimatedDurationInSeconds:
type: number
description: The work order's estimated duration in seconds
procedureValues:
# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/remberg/refs/heads/main/openapi/remberg-work-orders-api-openapi.yml