Download OpenAPI specification:
HR system of ACME analog Inc. and system of record for employees (title/role/hierarchy), vacation/absence planning, deputies & assistants, sick days, compensation as well as powers of attorney and approval limits.
This data feeds the approval/e-approval logic (which person may sign off on which amount, who deputizes during an absence) and consumers (who is available/on vacation/sick on day N). It evolves the existing org domain model (Person · OrgUnit · PowerOfAttorney · Absence · Role). The read-only /api/org browsing (people/units/hierarchy) continues to exist alongside it and is the source of people for consumers.
Roles (ACMEbase): WATCH reads, WORK writes operationally, ADMIN maintains master data. Per operation under x-required-role; hierarchy ADMIN > WORK > WATCH.
Employees (hired). Applicants are not included — see /applicants.
| active | boolean Active/inactive only. |
| unitId | string Filter by primary org unit. |
| q | string Free text (name/email/title). |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null |
| active required | boolean |
| applicant | boolean Applicant (not yet hired). |
| primaryOrgUnitId | string or null |
| primaryOrgUnitName | string or null |
| managerId | string or null Reporting line (manager). |
| deputyIds | Array of strings Named deputies. |
| assistantIds | Array of strings |
| secondaryUnitIds | Array of strings Matrix/secondary memberships. |
| compType | string (CompensationType) Enum: "HOURLY" "SALARIED" |
| hourlyRate | number or null Hourly rate when HOURLY. |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
[- {
- "id": "p-julia-jefa",
- "firstName": "string",
- "lastName": "string",
- "fullName": "Julia Jefa",
- "email": "user@example.com",
- "jobTitle": "Managing Director",
- "active": true,
- "applicant": true,
- "primaryOrgUnitId": "string",
- "primaryOrgUnitName": "string",
- "managerId": "string",
- "deputyIds": [
- "string"
], - "assistantIds": [
- "string"
], - "secondaryUnitIds": [
- "string"
], - "compType": "HOURLY",
- "hourlyRate": 0,
- "workLocation": "ONSITE"
}
]Creates a hired employee directly (active=true, applicant=false).
| firstName required | string |
| lastName required | string |
string <email> | |
| jobTitle | string |
| primaryOrgUnitId | string |
| managerId | string |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null |
| active required | boolean |
| applicant | boolean Applicant (not yet hired). |
| primaryOrgUnitId | string or null |
| primaryOrgUnitName | string or null |
| managerId | string or null Reporting line (manager). |
| deputyIds | Array of strings Named deputies. |
| assistantIds | Array of strings |
| secondaryUnitIds | Array of strings Matrix/secondary memberships. |
| compType | string (CompensationType) Enum: "HOURLY" "SALARIED" |
| hourlyRate | number or null Hourly rate when HOURLY. |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
{- "firstName": "string",
- "lastName": "string",
- "email": "user@example.com",
- "jobTitle": "string",
- "primaryOrgUnitId": "string",
- "managerId": "string",
- "workLocation": "ONSITE"
}{- "id": "p-julia-jefa",
- "firstName": "string",
- "lastName": "string",
- "fullName": "Julia Jefa",
- "email": "user@example.com",
- "jobTitle": "Managing Director",
- "active": true,
- "applicant": true,
- "primaryOrgUnitId": "string",
- "primaryOrgUnitName": "string",
- "managerId": "string",
- "deputyIds": [
- "string"
], - "assistantIds": [
- "string"
], - "secondaryUnitIds": [
- "string"
], - "compType": "HOURLY",
- "hourlyRate": 0,
- "workLocation": "ONSITE"
}| id required | string <= 32 characters Natural person key. |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null |
| active required | boolean |
| applicant | boolean Applicant (not yet hired). |
| primaryOrgUnitId | string or null |
| primaryOrgUnitName | string or null |
| managerId | string or null Reporting line (manager). |
| deputyIds | Array of strings Named deputies. |
| assistantIds | Array of strings |
| secondaryUnitIds | Array of strings Matrix/secondary memberships. |
| compType | string (CompensationType) Enum: "HOURLY" "SALARIED" |
| hourlyRate | number or null Hourly rate when HOURLY. |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
{- "id": "p-julia-jefa",
- "firstName": "string",
- "lastName": "string",
- "fullName": "Julia Jefa",
- "email": "user@example.com",
- "jobTitle": "Managing Director",
- "active": true,
- "applicant": true,
- "primaryOrgUnitId": "string",
- "primaryOrgUnitName": "string",
- "managerId": "string",
- "deputyIds": [
- "string"
], - "assistantIds": [
- "string"
], - "secondaryUnitIds": [
- "string"
], - "compType": "HOURLY",
- "hourlyRate": 0,
- "workLocation": "ONSITE"
}| id required | string <= 32 characters Natural person key. |
| jobTitle | string |
| managerId | string or null |
| active | boolean |
| deputyIds | Array of strings |
| assistantIds | Array of strings |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null |
| active required | boolean |
| applicant | boolean Applicant (not yet hired). |
| primaryOrgUnitId | string or null |
| primaryOrgUnitName | string or null |
| managerId | string or null Reporting line (manager). |
| deputyIds | Array of strings Named deputies. |
| assistantIds | Array of strings |
| secondaryUnitIds | Array of strings Matrix/secondary memberships. |
| compType | string (CompensationType) Enum: "HOURLY" "SALARIED" |
| hourlyRate | number or null Hourly rate when HOURLY. |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
{- "jobTitle": "string",
- "managerId": "string",
- "active": true,
- "deputyIds": [
- "string"
], - "assistantIds": [
- "string"
], - "workLocation": "ONSITE"
}{- "id": "p-julia-jefa",
- "firstName": "string",
- "lastName": "string",
- "fullName": "Julia Jefa",
- "email": "user@example.com",
- "jobTitle": "Managing Director",
- "active": true,
- "applicant": true,
- "primaryOrgUnitId": "string",
- "primaryOrgUnitName": "string",
- "managerId": "string",
- "deputyIds": [
- "string"
], - "assistantIds": [
- "string"
], - "secondaryUnitIds": [
- "string"
], - "compType": "HOURLY",
- "hourlyRate": 0,
- "workLocation": "ONSITE"
}| unitId | string Target org unit. |
| q | string Free text (name/title). |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null Target role. |
| targetOrgUnitId | string or null Target org unit. |
| targetOrgUnitName | string or null |
| appliedOn | string or null <date> |
| stage | string (ApplicantStage) Enum: "NEW" "SCREENING" "INTERVIEW" "OFFER" "REJECTED" Recruiting pipeline stage of an applicant. |
| matchScore | integer or null [ 0 .. 100 ] Fit score 0–100 from screening; null until scored. |
[- {
- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "fullName": "string",
- "email": "user@example.com",
- "jobTitle": "string",
- "targetOrgUnitId": "string",
- "targetOrgUnitName": "string",
- "appliedOn": "2019-08-24",
- "stage": "NEW",
- "matchScore": 100
}
]| firstName required | string |
| lastName required | string |
string <email> | |
| jobTitle | string |
| targetOrgUnitId | string |
| stage | string (ApplicantStage) Enum: "NEW" "SCREENING" "INTERVIEW" "OFFER" "REJECTED" Recruiting pipeline stage of an applicant. |
| matchScore | integer or null [ 0 .. 100 ] |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null Target role. |
| targetOrgUnitId | string or null Target org unit. |
| targetOrgUnitName | string or null |
| appliedOn | string or null <date> |
| stage | string (ApplicantStage) Enum: "NEW" "SCREENING" "INTERVIEW" "OFFER" "REJECTED" Recruiting pipeline stage of an applicant. |
| matchScore | integer or null [ 0 .. 100 ] Fit score 0–100 from screening; null until scored. |
{- "firstName": "string",
- "lastName": "string",
- "email": "user@example.com",
- "jobTitle": "string",
- "targetOrgUnitId": "string",
- "stage": "NEW",
- "matchScore": 100
}{- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "fullName": "string",
- "email": "user@example.com",
- "jobTitle": "string",
- "targetOrgUnitId": "string",
- "targetOrgUnitName": "string",
- "appliedOn": "2019-08-24",
- "stage": "NEW",
- "matchScore": 100
}| id required | string <= 32 characters Natural person key. |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null Target role. |
| targetOrgUnitId | string or null Target org unit. |
| targetOrgUnitName | string or null |
| appliedOn | string or null <date> |
| stage | string (ApplicantStage) Enum: "NEW" "SCREENING" "INTERVIEW" "OFFER" "REJECTED" Recruiting pipeline stage of an applicant. |
| matchScore | integer or null [ 0 .. 100 ] Fit score 0–100 from screening; null until scored. |
{- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "fullName": "string",
- "email": "user@example.com",
- "jobTitle": "string",
- "targetOrgUnitId": "string",
- "targetOrgUnitName": "string",
- "appliedOn": "2019-08-24",
- "stage": "NEW",
- "matchScore": 100
}Sets the recruiting stage (Bewerber board drag & drop).
| id required | string <= 32 characters Natural person key. |
| stage required | string (ApplicantStage) Enum: "NEW" "SCREENING" "INTERVIEW" "OFFER" "REJECTED" Recruiting pipeline stage of an applicant. |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null Target role. |
| targetOrgUnitId | string or null Target org unit. |
| targetOrgUnitName | string or null |
| appliedOn | string or null <date> |
| stage | string (ApplicantStage) Enum: "NEW" "SCREENING" "INTERVIEW" "OFFER" "REJECTED" Recruiting pipeline stage of an applicant. |
| matchScore | integer or null [ 0 .. 100 ] Fit score 0–100 from screening; null until scored. |
{- "stage": "NEW"
}{- "id": "string",
- "firstName": "string",
- "lastName": "string",
- "fullName": "string",
- "email": "user@example.com",
- "jobTitle": "string",
- "targetOrgUnitId": "string",
- "targetOrgUnitName": "string",
- "appliedOn": "2019-08-24",
- "stage": "NEW",
- "matchScore": 100
}Starts hiring the applicant: opens a hiring folder for approval (HR officer → HR management → managing director). On the concluding approval the applicant becomes an employee (applicant=false, active=true); a rejection imposes a re-hire block.
| id required | string <= 32 characters Natural person key. |
| day | integer Default: 0 Day of hiring. |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null |
| active required | boolean |
| applicant | boolean Applicant (not yet hired). |
| primaryOrgUnitId | string or null |
| primaryOrgUnitName | string or null |
| managerId | string or null Reporting line (manager). |
| deputyIds | Array of strings Named deputies. |
| assistantIds | Array of strings |
| secondaryUnitIds | Array of strings Matrix/secondary memberships. |
| compType | string (CompensationType) Enum: "HOURLY" "SALARIED" |
| hourlyRate | number or null Hourly rate when HOURLY. |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
{- "id": "p-julia-jefa",
- "firstName": "string",
- "lastName": "string",
- "fullName": "Julia Jefa",
- "email": "user@example.com",
- "jobTitle": "Managing Director",
- "active": true,
- "applicant": true,
- "primaryOrgUnitId": "string",
- "primaryOrgUnitName": "string",
- "managerId": "string",
- "deputyIds": [
- "string"
], - "assistantIds": [
- "string"
], - "secondaryUnitIds": [
- "string"
], - "compType": "HOURLY",
- "hourlyRate": 0,
- "workLocation": "ONSITE"
}| id required | string <= 32 characters Natural person key. |
| compType required | string (CompensationType) Enum: "HOURLY" "SALARIED" |
| hourlyRate | number or null Required when HOURLY. |
| id required | string <= 32 characters |
| firstName | string |
| lastName | string |
| fullName required | string |
string or null <email> | |
| jobTitle | string or null |
| active required | boolean |
| applicant | boolean Applicant (not yet hired). |
| primaryOrgUnitId | string or null |
| primaryOrgUnitName | string or null |
| managerId | string or null Reporting line (manager). |
| deputyIds | Array of strings Named deputies. |
| assistantIds | Array of strings |
| secondaryUnitIds | Array of strings Matrix/secondary memberships. |
| compType | string (CompensationType) Enum: "HOURLY" "SALARIED" |
| hourlyRate | number or null Hourly rate when HOURLY. |
| workLocation | string (WorkLocation) Enum: "ONSITE" "REMOTE" "HYBRID" Where an employee primarily works. |
{- "compType": "HOURLY",
- "hourlyRate": 0
}{- "id": "p-julia-jefa",
- "firstName": "string",
- "lastName": "string",
- "fullName": "Julia Jefa",
- "email": "user@example.com",
- "jobTitle": "Managing Director",
- "active": true,
- "applicant": true,
- "primaryOrgUnitId": "string",
- "primaryOrgUnitName": "string",
- "managerId": "string",
- "deputyIds": [
- "string"
], - "assistantIds": [
- "string"
], - "secondaryUnitIds": [
- "string"
], - "compType": "HOURLY",
- "hourlyRate": 0,
- "workLocation": "ONSITE"
}| salariedCount required | integer |
| hourlyCount required | integer |
| weeklySalariedEur required | number |
| weeklyHourlyEur required | number |
| weeklyTotalEur required | number |
{- "salariedCount": 0,
- "hourlyCount": 0,
- "weeklySalariedEur": 0,
- "weeklyHourlyEur": 0,
- "weeklyTotalEur": 0
}| id required | string <= 32 characters Natural person key. |
| id required | string |
| personId required | string |
| personName | string |
| roleId required | string |
| roleTitle | string |
| orgUnitId | string or null |
| validFrom | string or null <date> |
| validUntil | string or null <date> |
[- {
- "id": "string",
- "personId": "string",
- "personName": "string",
- "roleId": "string",
- "roleTitle": "string",
- "orgUnitId": "string",
- "validFrom": "2019-08-24",
- "validUntil": "2019-08-24"
}
]| id required | string <= 32 characters Natural person key. |
| roleId required | string |
| orgUnitId | string or null |
| validFrom | string or null <date> |
| validUntil | string or null <date> |
| id required | string |
| personId required | string |
| personName | string |
| roleId required | string |
| roleTitle | string |
| orgUnitId | string or null |
| validFrom | string or null <date> |
| validUntil | string or null <date> |
{- "roleId": "string",
- "orgUnitId": "string",
- "validFrom": "2019-08-24",
- "validUntil": "2019-08-24"
}{- "id": "string",
- "personId": "string",
- "personName": "string",
- "roleId": "string",
- "roleTitle": "string",
- "orgUnitId": "string",
- "validFrom": "2019-08-24",
- "validUntil": "2019-08-24"
}| id required | string |
| title required | string |
| kind required | string (RoleKind) Enum: "BUSINESS" "GOVERNANCE" "SYSTEM" |
| description | string or null |
[- {
- "id": "string",
- "title": "Head of Purchasing",
- "kind": "BUSINESS",
- "description": "string"
}
]| id required | string <= 32 characters Natural person key. |
| id required | string |
| personId required | string |
| personName | string |
| type required | string (AbsenceType) Enum: "VACATION" "SICK" "CURE" "TRAINING" "OTHER" Type of absence. |
| status required | string (AbsenceStatus) Enum: "PLANNED" "APPROVED" "REJECTED" "CANCELLED" |
required | object (DateRange) Validity period. |
| substituteId | string or null Deputy during the absence. |
| substituteName | string or null |
| reasonKey | string or null Business key/reason (e.g. urlaub-1). |
| note | string or null |
| workingDays | integer or null Effective working days (excluding weekend). |
[- {
- "id": "string",
- "personId": "string",
- "personName": "string",
- "type": "VACATION",
- "status": "PLANNED",
- "period": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "substituteId": "string",
- "substituteName": "string",
- "reasonKey": "string",
- "note": "string",
- "workingDays": 0
}
]| personId | string |
| type | string (AbsenceType) Enum: "VACATION" "SICK" "CURE" "TRAINING" "OTHER" Type of absence. |
| status | string (AbsenceStatus) Enum: "PLANNED" "APPROVED" "REJECTED" "CANCELLED" |
| from | string <date> Overlap from this day on. |
| until | string <date> Overlap up to this day. |
| id required | string |
| personId required | string |
| personName | string |
| type required | string (AbsenceType) Enum: "VACATION" "SICK" "CURE" "TRAINING" "OTHER" Type of absence. |
| status required | string (AbsenceStatus) Enum: "PLANNED" "APPROVED" "REJECTED" "CANCELLED" |
required | object (DateRange) Validity period. |
| substituteId | string or null Deputy during the absence. |
| substituteName | string or null |
| reasonKey | string or null Business key/reason (e.g. urlaub-1). |
| note | string or null |
| workingDays | integer or null Effective working days (excluding weekend). |
[- {
- "id": "string",
- "personId": "string",
- "personName": "string",
- "type": "VACATION",
- "status": "PLANNED",
- "period": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "substituteId": "string",
- "substituteName": "string",
- "reasonKey": "string",
- "note": "string",
- "workingDays": 0
}
]Creates an absence. VACATION starts as PLANNED (approval follows), SICK is usually recorded directly as APPROVED (reported).
| personId required | string |
| type required | string (AbsenceType) Enum: "VACATION" "SICK" "CURE" "TRAINING" "OTHER" Type of absence. |
| from required | string <date> |
| until required | string <date> |
| substituteId | string or null |
| note | string or null |
| Location | string URI of the new resource. |
| id required | string |
| personId required | string |
| personName | string |
| type required | string (AbsenceType) Enum: "VACATION" "SICK" "CURE" "TRAINING" "OTHER" Type of absence. |
| status required | string (AbsenceStatus) Enum: "PLANNED" "APPROVED" "REJECTED" "CANCELLED" |
required | object (DateRange) Validity period. |
| substituteId | string or null Deputy during the absence. |
| substituteName | string or null |
| reasonKey | string or null Business key/reason (e.g. urlaub-1). |
| note | string or null |
| workingDays | integer or null Effective working days (excluding weekend). |
{- "personId": "p-julia-jefa",
- "type": "VACATION",
- "from": "2026-07-20",
- "until": "2026-08-02",
- "substituteId": "p-dirk-direktor",
- "note": "Summer vacation"
}{- "id": "string",
- "personId": "string",
- "personName": "string",
- "type": "VACATION",
- "status": "PLANNED",
- "period": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "substituteId": "string",
- "substituteName": "string",
- "reasonKey": "string",
- "note": "string",
- "workingDays": 0
}| id required | string |
| id required | string |
| personId required | string |
| personName | string |
| type required | string (AbsenceType) Enum: "VACATION" "SICK" "CURE" "TRAINING" "OTHER" Type of absence. |
| status required | string (AbsenceStatus) Enum: "PLANNED" "APPROVED" "REJECTED" "CANCELLED" |
required | object (DateRange) Validity period. |
| substituteId | string or null Deputy during the absence. |
| substituteName | string or null |
| reasonKey | string or null Business key/reason (e.g. urlaub-1). |
| note | string or null |
| workingDays | integer or null Effective working days (excluding weekend). |
{- "id": "string",
- "personId": "string",
- "personName": "string",
- "type": "VACATION",
- "status": "PLANNED",
- "period": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "substituteId": "string",
- "substituteName": "string",
- "reasonKey": "string",
- "note": "string",
- "workingDays": 0
}| id required | string |
| status | string (AbsenceStatus) Enum: "PLANNED" "APPROVED" "REJECTED" "CANCELLED" |
| substituteId | string or null |
| from | string <date> |
| until | string <date> |
| note | string or null |
| id required | string |
| personId required | string |
| personName | string |
| type required | string (AbsenceType) Enum: "VACATION" "SICK" "CURE" "TRAINING" "OTHER" Type of absence. |
| status required | string (AbsenceStatus) Enum: "PLANNED" "APPROVED" "REJECTED" "CANCELLED" |
required | object (DateRange) Validity period. |
| substituteId | string or null Deputy during the absence. |
| substituteName | string or null |
| reasonKey | string or null Business key/reason (e.g. urlaub-1). |
| note | string or null |
| workingDays | integer or null Effective working days (excluding weekend). |
{- "status": "PLANNED",
- "substituteId": "string",
- "from": "2019-08-24",
- "until": "2019-08-24",
- "note": "string"
}{- "id": "string",
- "personId": "string",
- "personName": "string",
- "type": "VACATION",
- "status": "PLANNED",
- "period": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "substituteId": "string",
- "substituteName": "string",
- "reasonKey": "string",
- "note": "string",
- "workingDays": 0
}{- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string"
}| id required | string <= 32 characters Natural person key. |
| id required | string |
| holderId required | string |
| holderName | string |
| legalEntityId required | string |
| type required | string (PowerOfAttorneyType) Enum: "PROKURA" "HANDLUNGSVOLLMACHT" "GENERAL" "SPECIAL" |
| signatureRule required | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
required | object (Money) Monetary amount. |
| scope | string or null |
object (DateRange) Validity period. | |
| revoked required | boolean |
[- {
- "id": "string",
- "holderId": "string",
- "holderName": "string",
- "legalEntityId": "string",
- "type": "PROKURA",
- "signatureRule": "SOLE",
- "limit": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "scope": "string",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "revoked": true
}
]| holderId | string |
| legalEntityId | string |
| includeRevoked | boolean Default: false |
| id required | string |
| holderId required | string |
| holderName | string |
| legalEntityId required | string |
| type required | string (PowerOfAttorneyType) Enum: "PROKURA" "HANDLUNGSVOLLMACHT" "GENERAL" "SPECIAL" |
| signatureRule required | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
required | object (Money) Monetary amount. |
| scope | string or null |
object (DateRange) Validity period. | |
| revoked required | boolean |
[- {
- "id": "string",
- "holderId": "string",
- "holderName": "string",
- "legalEntityId": "string",
- "type": "PROKURA",
- "signatureRule": "SOLE",
- "limit": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "scope": "string",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "revoked": true
}
]| holderId required | string |
| legalEntityId required | string |
| type required | string (PowerOfAttorneyType) Enum: "PROKURA" "HANDLUNGSVOLLMACHT" "GENERAL" "SPECIAL" |
| signatureRule required | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
object (Money) Monetary amount. | |
| scope | string or null |
| validFrom required | string <date> |
| validUntil | string or null <date> |
| id required | string |
| holderId required | string |
| holderName | string |
| legalEntityId required | string |
| type required | string (PowerOfAttorneyType) Enum: "PROKURA" "HANDLUNGSVOLLMACHT" "GENERAL" "SPECIAL" |
| signatureRule required | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
required | object (Money) Monetary amount. |
| scope | string or null |
object (DateRange) Validity period. | |
| revoked required | boolean |
{- "holderId": "string",
- "legalEntityId": "string",
- "type": "PROKURA",
- "signatureRule": "SOLE",
- "limit": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "scope": "string",
- "validFrom": "2019-08-24",
- "validUntil": "2019-08-24"
}{- "id": "string",
- "holderId": "string",
- "holderName": "string",
- "legalEntityId": "string",
- "type": "PROKURA",
- "signatureRule": "SOLE",
- "limit": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "scope": "string",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "revoked": true
}| id required | string |
| id required | string |
| holderId required | string |
| holderName | string |
| legalEntityId required | string |
| type required | string (PowerOfAttorneyType) Enum: "PROKURA" "HANDLUNGSVOLLMACHT" "GENERAL" "SPECIAL" |
| signatureRule required | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
required | object (Money) Monetary amount. |
| scope | string or null |
object (DateRange) Validity period. | |
| revoked required | boolean |
{- "id": "string",
- "holderId": "string",
- "holderName": "string",
- "legalEntityId": "string",
- "type": "PROKURA",
- "signatureRule": "SOLE",
- "limit": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "scope": "string",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "revoked": true
}| id required | string |
| id required | string |
| holderId required | string |
| holderName | string |
| legalEntityId required | string |
| type required | string (PowerOfAttorneyType) Enum: "PROKURA" "HANDLUNGSVOLLMACHT" "GENERAL" "SPECIAL" |
| signatureRule required | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
required | object (Money) Monetary amount. |
| scope | string or null |
object (DateRange) Validity period. | |
| revoked required | boolean |
{- "id": "string",
- "holderId": "string",
- "holderName": "string",
- "legalEntityId": "string",
- "type": "PROKURA",
- "signatureRule": "SOLE",
- "limit": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "scope": "string",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "revoked": true
}Returns the approval limit effective on the given date (resolved from active powers of attorney or an explicitly maintained limit). Does NOT account for deputies — that is handled by e-approval resolution.
| id required | string <= 32 characters Natural person key. |
| on | string <date> Reference date (default = today / current day). |
| legalEntityId | string Restrict to one legal entity. |
| personId required | string |
| personName | string |
| legalEntityId | string or null |
required | object (Money) Monetary amount. |
| signatureRule | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
| source required | string Enum: "POWER_OF_ATTORNEY" "EXPLICIT" Origin of the limit. |
object (DateRange) Validity period. |
{- "personId": "string",
- "personName": "string",
- "legalEntityId": "string",
- "maxAmount": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "signatureRule": "SOLE",
- "source": "POWER_OF_ATTORNEY",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}
}| personId | string |
| on | string <date> Reference date (default = today / current day). |
| personId required | string |
| personName | string |
| legalEntityId | string or null |
required | object (Money) Monetary amount. |
| signatureRule | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
| source required | string Enum: "POWER_OF_ATTORNEY" "EXPLICIT" Origin of the limit. |
object (DateRange) Validity period. |
[- {
- "personId": "string",
- "personName": "string",
- "legalEntityId": "string",
- "maxAmount": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "signatureRule": "SOLE",
- "source": "POWER_OF_ATTORNEY",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}
}
]Sets an explicitly maintained approval limit (overrides the one derived from powers of attorney).
| personId required | string |
| legalEntityId | string or null |
required | object (Money) Monetary amount. |
| validFrom | string or null <date> |
| validUntil | string or null <date> |
| personId required | string |
| personName | string |
| legalEntityId | string or null |
required | object (Money) Monetary amount. |
| signatureRule | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
| source required | string Enum: "POWER_OF_ATTORNEY" "EXPLICIT" Origin of the limit. |
object (DateRange) Validity period. |
{- "personId": "string",
- "legalEntityId": "string",
- "maxAmount": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "validFrom": "2019-08-24",
- "validUntil": "2019-08-24"
}{- "personId": "string",
- "personName": "string",
- "legalEntityId": "string",
- "maxAmount": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "signatureRule": "SOLE",
- "source": "POWER_OF_ATTORNEY",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}
}Who may sign off on the given amount for this legal entity on the given date (from active powers of attorney).
| legalEntityId required | string |
| amount required | number |
| currency | string = 3 characters Default: "EUR" |
| on | string <date> Reference date (default = today / current day). |
| id required | string |
| holderId required | string |
| holderName | string |
| legalEntityId required | string |
| type required | string (PowerOfAttorneyType) Enum: "PROKURA" "HANDLUNGSVOLLMACHT" "GENERAL" "SPECIAL" |
| signatureRule required | string (SignatureRule) Enum: "SOLE" "JOINT" SOLE = sole signing authority, JOINT = only jointly. |
required | object (Money) Monetary amount. |
| scope | string or null |
object (DateRange) Validity period. | |
| revoked required | boolean |
[- {
- "id": "string",
- "holderId": "string",
- "holderName": "string",
- "legalEntityId": "string",
- "type": "PROKURA",
- "signatureRule": "SOLE",
- "limit": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "scope": "string",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "revoked": true
}
]| kind | string (CustomerKind) Enum: "CUSTOMER" "RESELLER" |
| status | string (CustomerStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
| resellerId | string Customers of a reseller. |
| q | string |
| id required | string |
| name required | string |
| kind required | string (CustomerKind) Enum: "CUSTOMER" "RESELLER" |
| status required | string (CustomerStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
| parentResellerId | string or null For end customers of a reseller. |
| priceListId | string or null Assigned price list. |
[- {
- "id": "string",
- "name": "Kontor Nord GmbH",
- "kind": "CUSTOMER",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE",
- "parentResellerId": "string",
- "priceListId": "string"
}
]| name required | string |
| kind required | string (CustomerKind) Enum: "CUSTOMER" "RESELLER" |
| status | string (CustomerStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string <email> | |
| country | string |
| parentResellerId | string or null |
| priceListId | string or null |
| id required | string |
| name required | string |
| kind required | string (CustomerKind) Enum: "CUSTOMER" "RESELLER" |
| status required | string (CustomerStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
| parentResellerId | string or null For end customers of a reseller. |
| priceListId | string or null Assigned price list. |
{- "name": "string",
- "kind": "CUSTOMER",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "string",
- "parentResellerId": "string",
- "priceListId": "string"
}{- "id": "string",
- "name": "Kontor Nord GmbH",
- "kind": "CUSTOMER",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE",
- "parentResellerId": "string",
- "priceListId": "string"
}| id required | string |
| id required | string |
| name required | string |
| kind required | string (CustomerKind) Enum: "CUSTOMER" "RESELLER" |
| status required | string (CustomerStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
| parentResellerId | string or null For end customers of a reseller. |
| priceListId | string or null Assigned price list. |
{- "id": "string",
- "name": "Kontor Nord GmbH",
- "kind": "CUSTOMER",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE",
- "parentResellerId": "string",
- "priceListId": "string"
}| id required | string |
| name required | string |
| kind required | string (CustomerKind) Enum: "CUSTOMER" "RESELLER" |
| status | string (CustomerStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string <email> | |
| country | string |
| parentResellerId | string or null |
| priceListId | string or null |
| id required | string |
| name required | string |
| kind required | string (CustomerKind) Enum: "CUSTOMER" "RESELLER" |
| status required | string (CustomerStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
| parentResellerId | string or null For end customers of a reseller. |
| priceListId | string or null Assigned price list. |
{- "name": "string",
- "kind": "CUSTOMER",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "string",
- "parentResellerId": "string",
- "priceListId": "string"
}{- "id": "string",
- "name": "Kontor Nord GmbH",
- "kind": "CUSTOMER",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE",
- "parentResellerId": "string",
- "priceListId": "string"
}| category | string |
| active | boolean |
| q | string |
| id required | string |
| sku required | string |
| name required | string |
| category | string or null |
| unit | string Default: "piece" |
| active required | boolean |
object (Money) Monetary amount. |
[- {
- "id": "string",
- "sku": "ACME-RADIO-01",
- "name": "Tube radio „Nostalgie“",
- "category": "string",
- "unit": "piece",
- "active": true,
- "listPrice": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}
}
]| sku required | string |
| name required | string |
| category | string |
| unit | string |
| active | boolean |
object (Money) Monetary amount. |
| id required | string |
| sku required | string |
| name required | string |
| category | string or null |
| unit | string Default: "piece" |
| active required | boolean |
object (Money) Monetary amount. |
{- "sku": "string",
- "name": "string",
- "category": "string",
- "unit": "string",
- "active": true,
- "listPrice": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}
}{- "id": "string",
- "sku": "ACME-RADIO-01",
- "name": "Tube radio „Nostalgie“",
- "category": "string",
- "unit": "piece",
- "active": true,
- "listPrice": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}
}| id required | string |
| id required | string |
| sku required | string |
| name required | string |
| category | string or null |
| unit | string Default: "piece" |
| active required | boolean |
object (Money) Monetary amount. |
{- "id": "string",
- "sku": "ACME-RADIO-01",
- "name": "Tube radio „Nostalgie“",
- "category": "string",
- "unit": "piece",
- "active": true,
- "listPrice": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}
}| id required | string |
| sku required | string |
| name required | string |
| category | string |
| unit | string |
| active | boolean |
object (Money) Monetary amount. |
| id required | string |
| sku required | string |
| name required | string |
| category | string or null |
| unit | string Default: "piece" |
| active required | boolean |
object (Money) Monetary amount. |
{- "sku": "string",
- "name": "string",
- "category": "string",
- "unit": "string",
- "active": true,
- "listPrice": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}
}{- "id": "string",
- "sku": "ACME-RADIO-01",
- "name": "Tube radio „Nostalgie“",
- "category": "string",
- "unit": "piece",
- "active": true,
- "listPrice": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}
}| kind | string (PriceListKind) Enum: "LIST" "RESELLER" "CUSTOM" |
| id required | string |
| name required | string |
| currency required | string = 3 characters |
| kind required | string (PriceListKind) Enum: "LIST" "RESELLER" "CUSTOM" |
object (DateRange) Validity period. | |
required | Array of objects (PriceListItem) |
[- {
- "id": "string",
- "name": "string",
- "currency": "EUR",
- "kind": "LIST",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "items": [
- {
- "productId": "string",
- "unitPrice": 149,
- "minQuantity": 1
}
]
}
]| name required | string |
| currency required | string = 3 characters |
| kind required | string (PriceListKind) Enum: "LIST" "RESELLER" "CUSTOM" |
| validFrom | string <date> |
| validUntil | string or null <date> |
Array of objects (PriceListItem) |
| id required | string |
| name required | string |
| currency required | string = 3 characters |
| kind required | string (PriceListKind) Enum: "LIST" "RESELLER" "CUSTOM" |
object (DateRange) Validity period. | |
required | Array of objects (PriceListItem) |
{- "name": "string",
- "currency": "str",
- "kind": "LIST",
- "validFrom": "2019-08-24",
- "validUntil": "2019-08-24",
- "items": [
- {
- "productId": "string",
- "unitPrice": 149,
- "minQuantity": 1
}
]
}{- "id": "string",
- "name": "string",
- "currency": "EUR",
- "kind": "LIST",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "items": [
- {
- "productId": "string",
- "unitPrice": 149,
- "minQuantity": 1
}
]
}| id required | string |
| id required | string |
| name required | string |
| currency required | string = 3 characters |
| kind required | string (PriceListKind) Enum: "LIST" "RESELLER" "CUSTOM" |
object (DateRange) Validity period. | |
required | Array of objects (PriceListItem) |
{- "id": "string",
- "name": "string",
- "currency": "EUR",
- "kind": "LIST",
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "items": [
- {
- "productId": "string",
- "unitPrice": 149,
- "minQuantity": 1
}
]
}Returns the unit price applicable for customer + product + quantity (incl. tier/reseller).
| customerId required | string |
| productId required | string |
| quantity | integer >= 1 Default: 1 |
| productId required | string |
| customerId required | string |
| quantity required | integer |
| unitPrice required | number |
| currency | string |
| priceListId | string or null |
| source | string Enum: "PRICE_LIST" "LIST_PRICE" |
{- "productId": "string",
- "customerId": "string",
- "quantity": 0,
- "unitPrice": 0,
- "currency": "string",
- "priceListId": "string",
- "source": "PRICE_LIST"
}| customerId | string |
| status | string (QuoteStatus) Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED" |
| id required | string |
| customerId required | string |
| customerName | string |
| status required | string (QuoteStatus) Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED" |
| currency required | string |
| validUntil | string or null <date> |
required | Array of objects (Line) |
| netTotal required | number |
| createdOn | string or null <date> |
[- {
- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "status": "DRAFT",
- "currency": "string",
- "validUntil": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "netTotal": 0,
- "createdOn": "2019-08-24"
}
]Unit prices are resolved from the customer's price list if not provided.
| customerId required | string |
| validUntil | string or null <date> |
required | Array of objects (LineWrite) non-empty |
| id required | string |
| customerId required | string |
| customerName | string |
| status required | string (QuoteStatus) Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED" |
| currency required | string |
| validUntil | string or null <date> |
required | Array of objects (Line) |
| netTotal required | number |
| createdOn | string or null <date> |
{- "customerId": "string",
- "validUntil": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "quantity": 1,
- "unitPrice": 0,
- "discountPercent": 0
}
]
}{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "status": "DRAFT",
- "currency": "string",
- "validUntil": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "netTotal": 0,
- "createdOn": "2019-08-24"
}| id required | string |
| id required | string |
| customerId required | string |
| customerName | string |
| status required | string (QuoteStatus) Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED" |
| currency required | string |
| validUntil | string or null <date> |
required | Array of objects (Line) |
| netTotal required | number |
| createdOn | string or null <date> |
{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "status": "DRAFT",
- "currency": "string",
- "validUntil": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "netTotal": 0,
- "createdOn": "2019-08-24"
}| id required | string |
| status | string (QuoteStatus) Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED" |
| validUntil | string or null <date> |
| id required | string |
| customerId required | string |
| customerName | string |
| status required | string (QuoteStatus) Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED" |
| currency required | string |
| validUntil | string or null <date> |
required | Array of objects (Line) |
| netTotal required | number |
| createdOn | string or null <date> |
{- "status": "DRAFT",
- "validUntil": "2019-08-24"
}{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "status": "DRAFT",
- "currency": "string",
- "validUntil": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "netTotal": 0,
- "createdOn": "2019-08-24"
}Marks the quote as accepted and creates an order from it.
| id required | string |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}Consumers read the approved orders via status=APPROVED for the production cycle.
| customerId | string |
| status | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
[- {
- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}
]| customerId required | string |
| quoteId | string or null |
required | Array of objects (LineWrite) non-empty |
| shippingMode | string or null |
| note | string or null |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "customerId": "string",
- "quoteId": "string",
- "lines": [
- {
- "productId": "string",
- "quantity": 1,
- "unitPrice": 0,
- "discountPercent": 0
}
], - "shippingMode": "string",
- "note": "string"
}{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}Destructive reset of the order stock — intended only for the data/economy reset, hence ADMIN. Not for normal operation.
{- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string"
}| id required | string |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}Sets the status to PENDING_APPROVAL or — below the threshold — directly to APPROVED.
| id required | string |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}| id required | string |
| approverId required | string Person (ACMEhr) making the decision. |
| decision required | string Enum: "APPROVE" "REJECT" |
| comment | string or null |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "approverId": "string",
- "decision": "APPROVE",
- "comment": "string"
}{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}Reports the quantities produced on a day per line; reduces remainingQuantity. The production cycle calls this after manufacturing. Once the order is thereby complete, it moves to FULFILLED.
| id required | string |
required | Array of objects non-empty |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "lines": [
- {
- "productId": "string",
- "producedQuantity": 0
}
]
}{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}| id required | string |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}| id required | string |
| id required | string |
| customerId required | string |
| customerName | string |
| customerCountry | string or null |
| quoteId | string or null |
| status required | string (OrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED" |
| orderDate required | string <date> |
required | Array of objects (Line) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| shippingMode | string or null Shipping mode (e.g. AIR = air freight, otherwise sea freight). |
| note | string or null |
{- "id": "string",
- "customerId": "string",
- "customerName": "string",
- "customerCountry": "string",
- "quoteId": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "lines": [
- {
- "productId": "string",
- "productName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "discountPercent": 0,
- "lineTotal": 0,
- "remainingQuantity": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "shippingMode": "string",
- "note": "string"
}| customerId | string Contacts of a customer. |
| q | string |
| id required | string |
| customerId | string or null The company this contact belongs to. |
| name required | string |
| role | string or null |
string or null <email> | |
| phone | string or null |
| primary | boolean Default: false Primary contact of the customer. |
| newsletter | boolean Default: false Newsletter opt-in (set by form newsletter actions). |
[- {
- "id": "contact-1001",
- "customerId": "string",
- "name": "Sara Mena",
- "role": "CTO",
- "email": "user@example.com",
- "phone": "string",
- "primary": false,
- "newsletter": false
}
]| customerId | string or null |
| name required | string |
| role | string or null |
string or null <email> | |
| phone | string or null |
| primary | boolean |
| newsletter | boolean |
| id required | string |
| customerId | string or null The company this contact belongs to. |
| name required | string |
| role | string or null |
string or null <email> | |
| phone | string or null |
| primary | boolean Default: false Primary contact of the customer. |
| newsletter | boolean Default: false Newsletter opt-in (set by form newsletter actions). |
{- "customerId": "string",
- "name": "string",
- "role": "string",
- "email": "user@example.com",
- "phone": "string",
- "primary": true,
- "newsletter": true
}{- "id": "contact-1001",
- "customerId": "string",
- "name": "Sara Mena",
- "role": "CTO",
- "email": "user@example.com",
- "phone": "string",
- "primary": false,
- "newsletter": false
}| id required | string |
| id required | string |
| customerId | string or null The company this contact belongs to. |
| name required | string |
| role | string or null |
string or null <email> | |
| phone | string or null |
| primary | boolean Default: false Primary contact of the customer. |
| newsletter | boolean Default: false Newsletter opt-in (set by form newsletter actions). |
{- "id": "contact-1001",
- "customerId": "string",
- "name": "Sara Mena",
- "role": "CTO",
- "email": "user@example.com",
- "phone": "string",
- "primary": false,
- "newsletter": false
}| id required | string |
| customerId | string or null |
| name required | string |
| role | string or null |
string or null <email> | |
| phone | string or null |
| primary | boolean |
| newsletter | boolean |
| id required | string |
| customerId | string or null The company this contact belongs to. |
| name required | string |
| role | string or null |
string or null <email> | |
| phone | string or null |
| primary | boolean Default: false Primary contact of the customer. |
| newsletter | boolean Default: false Newsletter opt-in (set by form newsletter actions). |
{- "customerId": "string",
- "name": "string",
- "role": "string",
- "email": "user@example.com",
- "phone": "string",
- "primary": true,
- "newsletter": true
}{- "id": "contact-1001",
- "customerId": "string",
- "name": "Sara Mena",
- "role": "CTO",
- "email": "user@example.com",
- "phone": "string",
- "primary": false,
- "newsletter": false
}Sales pipeline overlay — a stage projection over leads/quotes/orders for the CRM board, table and funnel. Read-mostly; stage is settable for drag-drop / inline edit.
The sales pipeline as a list of Deals, each projected onto one of five stages.
Status → stage derivation (for deals backed by a quote/order): quote DRAFT → NEU; quote SENT → QUALIFIZIERT; quote ACCEPTED or order CREATED → ANGEBOT; order PENDING_APPROVAL → VERHANDLUNG; order APPROVED or FULFILLED → GEWONNEN. Lost deals (quote REJECTED/EXPIRED, order REJECTED/CANCELLED) are excluded by default. Bare leads (no quote yet) sit in the stage last set on them (default NEU).
| stage | string (PipelineStage) Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN" Ordered sales stage. |
| owner | string Filter by owner initials. |
| customerId | string Deals of a customer. |
| contactId | string Deals with a contact. |
| q | string Free-text over company/contact. |
| id required | string |
| source required | string (DealSource) Enum: "LEAD" "QUOTE" "ORDER" What the deal is currently backed by in the transactional model. |
| quoteId | string or null |
| orderId | string or null |
| customerId | string or null |
| contactId | string or null The contact this deal is with. |
| company required | string |
| contact | string or null |
| stage required | string (PipelineStage) Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN" Ordered sales stage. |
| probability required | integer [ 0 .. 100 ] Derived from |
required | object (Money) Monetary amount. |
object (Owner) Sales owner assigned to a deal (avatar initials + display name). | |
| lastActivity | string or null Human label |
| lastActivityAt | string or null <date-time> |
| ageDays | integer or null Days since the deal entered its current stage. |
[- {
- "id": "deal-1024",
- "source": "LEAD",
- "quoteId": "string",
- "orderId": "string",
- "customerId": "string",
- "contactId": "string",
- "company": "Nordwind Logistik",
- "contact": "Michael Braun · CPO",
- "stage": "NEU",
- "probability": 100,
- "value": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "owner": {
- "initials": "JS",
- "name": "Jana Schmidt"
}, - "lastActivity": "string",
- "lastActivityAt": "2019-08-24T14:15:22Z",
- "ageDays": 0
}
]Adds a new deal to the pipeline. Without a customerId/backing quote it is a bare lead (enters NEU by default); the sales team later attaches a quote/order as it progresses.
| company required | string |
| contact | string or null |
| customerId | string or null |
| contactId | string or null |
| stage | string (PipelineStage) Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN" Ordered sales stage. |
object (Money) Monetary amount. | |
| ownerInitials | string or null |
| id required | string |
| source required | string (DealSource) Enum: "LEAD" "QUOTE" "ORDER" What the deal is currently backed by in the transactional model. |
| quoteId | string or null |
| orderId | string or null |
| customerId | string or null |
| contactId | string or null The contact this deal is with. |
| company required | string |
| contact | string or null |
| stage required | string (PipelineStage) Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN" Ordered sales stage. |
| probability required | integer [ 0 .. 100 ] Derived from |
required | object (Money) Monetary amount. |
object (Owner) Sales owner assigned to a deal (avatar initials + display name). | |
| lastActivity | string or null Human label |
| lastActivityAt | string or null <date-time> |
| ageDays | integer or null Days since the deal entered its current stage. |
{- "company": "string",
- "contact": "string",
- "customerId": "string",
- "contactId": "string",
- "stage": "NEU",
- "value": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "ownerInitials": "string"
}{- "id": "deal-1024",
- "source": "LEAD",
- "quoteId": "string",
- "orderId": "string",
- "customerId": "string",
- "contactId": "string",
- "company": "Nordwind Logistik",
- "contact": "Michael Braun · CPO",
- "stage": "NEU",
- "probability": 100,
- "value": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "owner": {
- "initials": "JS",
- "name": "Jana Schmidt"
}, - "lastActivity": "string",
- "lastActivityAt": "2019-08-24T14:15:22Z",
- "ageDays": 0
}| id required | string |
| id required | string |
| source required | string (DealSource) Enum: "LEAD" "QUOTE" "ORDER" What the deal is currently backed by in the transactional model. |
| quoteId | string or null |
| orderId | string or null |
| customerId | string or null |
| contactId | string or null The contact this deal is with. |
| company required | string |
| contact | string or null |
| stage required | string (PipelineStage) Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN" Ordered sales stage. |
| probability required | integer [ 0 .. 100 ] Derived from |
required | object (Money) Monetary amount. |
object (Owner) Sales owner assigned to a deal (avatar initials + display name). | |
| lastActivity | string or null Human label |
| lastActivityAt | string or null <date-time> |
| ageDays | integer or null Days since the deal entered its current stage. |
{- "id": "deal-1024",
- "source": "LEAD",
- "quoteId": "string",
- "orderId": "string",
- "customerId": "string",
- "contactId": "string",
- "company": "Nordwind Logistik",
- "contact": "Michael Braun · CPO",
- "stage": "NEU",
- "probability": 100,
- "value": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "owner": {
- "initials": "JS",
- "name": "Jana Schmidt"
}, - "lastActivity": "string",
- "lastActivityAt": "2019-08-24T14:15:22Z",
- "ageDays": 0
}Sets sales-overlay attributes. Moving stage reflects the board drag-drop / inline edit; where a deal is backed by a quote/order the server advances the underlying record along its legal transition, otherwise it records the stage on the overlay.
| id required | string |
| stage | string (PipelineStage) Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN" Ordered sales stage. |
| company | string |
| contact | string or null |
| contactId | string or null |
object (Money) Monetary amount. | |
| ownerInitials | string or null |
| id required | string |
| source required | string (DealSource) Enum: "LEAD" "QUOTE" "ORDER" What the deal is currently backed by in the transactional model. |
| quoteId | string or null |
| orderId | string or null |
| customerId | string or null |
| contactId | string or null The contact this deal is with. |
| company required | string |
| contact | string or null |
| stage required | string (PipelineStage) Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN" Ordered sales stage. |
| probability required | integer [ 0 .. 100 ] Derived from |
required | object (Money) Monetary amount. |
object (Owner) Sales owner assigned to a deal (avatar initials + display name). | |
| lastActivity | string or null Human label |
| lastActivityAt | string or null <date-time> |
| ageDays | integer or null Days since the deal entered its current stage. |
{- "stage": "NEU",
- "company": "string",
- "contact": "string",
- "contactId": "string",
- "value": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "ownerInitials": "string"
}{- "id": "deal-1024",
- "source": "LEAD",
- "quoteId": "string",
- "orderId": "string",
- "customerId": "string",
- "contactId": "string",
- "company": "Nordwind Logistik",
- "contact": "Michael Braun · CPO",
- "stage": "NEU",
- "probability": 100,
- "value": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "owner": {
- "initials": "JS",
- "name": "Jana Schmidt"
}, - "lastActivity": "string",
- "lastActivityAt": "2019-08-24T14:15:22Z",
- "ageDays": 0
}Mail threads (correspondence) attached to a customer/contact. UI overlay — a real mail-sync backend is future work (currently mocked).
Correspondence attached to a customer and/or contact. Filter by either.
| customerId | string |
| contactId | string |
| q | string |
| id required | string |
| subject required | string |
| customerId | string or null |
| contactId | string or null |
| participants | Array of strings |
| messageCount | integer |
| lastMessageAt | string or null <date-time> |
| preview | string or null Snippet of the latest message. |
Array of objects (MailMessage) |
[- {
- "id": "thread-1001",
- "subject": "Angebot Rahmen XL",
- "customerId": "string",
- "contactId": "string",
- "participants": [
- "string"
], - "messageCount": 0,
- "lastMessageAt": "2019-08-24T14:15:22Z",
- "preview": "string",
- "messages": [
- {
- "id": "string",
- "direction": "INBOUND",
- "from": "string",
- "to": "string",
- "sentAt": "2019-08-24T14:15:22Z",
- "snippet": "string",
- "body": "string"
}
]
}
]| id required | string |
| id required | string |
| subject required | string |
| customerId | string or null |
| contactId | string or null |
| participants | Array of strings |
| messageCount | integer |
| lastMessageAt | string or null <date-time> |
| preview | string or null Snippet of the latest message. |
Array of objects (MailMessage) |
{- "id": "thread-1001",
- "subject": "Angebot Rahmen XL",
- "customerId": "string",
- "contactId": "string",
- "participants": [
- "string"
], - "messageCount": 0,
- "lastMessageAt": "2019-08-24T14:15:22Z",
- "preview": "string",
- "messages": [
- {
- "id": "string",
- "direction": "INBOUND",
- "from": "string",
- "to": "string",
- "sentAt": "2019-08-24T14:15:22Z",
- "snippet": "string",
- "body": "string"
}
]
}Web forms / newsletter signups. Layout and trigger actions are configured in Admin; POST /forms/{id}/submit is the public submission tool (validate → store → trigger).
Configured web forms / newsletter signups (definition maintained in Admin).
| id required | string |
| name required | string |
| slug required | string Public identifier used to embed the form. |
| description | string or null |
| enabled | boolean Default: true |
required | Array of objects (FormField) |
Array of objects (FormAction) Triggered on a valid submission. | |
| createdOn | string or null <date> |
[- {
- "id": "form-lead",
- "name": "Kontaktformular",
- "slug": "kontakt",
- "description": "string",
- "enabled": true,
- "fields": [
- {
- "key": "email",
- "label": "E-Mail",
- "type": "TEXT",
- "required": false,
- "placeholder": "string",
- "options": [
- "string"
]
}
], - "actions": [
- {
- "type": "SEND_EMAIL",
- "config": { }
}
], - "createdOn": "2019-08-24"
}
]| name required | string |
| slug required | string |
| description | string or null |
| enabled | boolean |
required | Array of objects (FormField) |
Array of objects (FormAction) |
| id required | string |
| name required | string |
| slug required | string Public identifier used to embed the form. |
| description | string or null |
| enabled | boolean Default: true |
required | Array of objects (FormField) |
Array of objects (FormAction) Triggered on a valid submission. | |
| createdOn | string or null <date> |
{- "name": "string",
- "slug": "string",
- "description": "string",
- "enabled": true,
- "fields": [
- {
- "key": "email",
- "label": "E-Mail",
- "type": "TEXT",
- "required": false,
- "placeholder": "string",
- "options": [
- "string"
]
}
], - "actions": [
- {
- "type": "SEND_EMAIL",
- "config": { }
}
]
}{- "id": "form-lead",
- "name": "Kontaktformular",
- "slug": "kontakt",
- "description": "string",
- "enabled": true,
- "fields": [
- {
- "key": "email",
- "label": "E-Mail",
- "type": "TEXT",
- "required": false,
- "placeholder": "string",
- "options": [
- "string"
]
}
], - "actions": [
- {
- "type": "SEND_EMAIL",
- "config": { }
}
], - "createdOn": "2019-08-24"
}| id required | string |
| id required | string |
| name required | string |
| slug required | string Public identifier used to embed the form. |
| description | string or null |
| enabled | boolean Default: true |
required | Array of objects (FormField) |
Array of objects (FormAction) Triggered on a valid submission. | |
| createdOn | string or null <date> |
{- "id": "form-lead",
- "name": "Kontaktformular",
- "slug": "kontakt",
- "description": "string",
- "enabled": true,
- "fields": [
- {
- "key": "email",
- "label": "E-Mail",
- "type": "TEXT",
- "required": false,
- "placeholder": "string",
- "options": [
- "string"
]
}
], - "actions": [
- {
- "type": "SEND_EMAIL",
- "config": { }
}
], - "createdOn": "2019-08-24"
}| id required | string |
| name required | string |
| slug required | string |
| description | string or null |
| enabled | boolean |
required | Array of objects (FormField) |
Array of objects (FormAction) |
| id required | string |
| name required | string |
| slug required | string Public identifier used to embed the form. |
| description | string or null |
| enabled | boolean Default: true |
required | Array of objects (FormField) |
Array of objects (FormAction) Triggered on a valid submission. | |
| createdOn | string or null <date> |
{- "name": "string",
- "slug": "string",
- "description": "string",
- "enabled": true,
- "fields": [
- {
- "key": "email",
- "label": "E-Mail",
- "type": "TEXT",
- "required": false,
- "placeholder": "string",
- "options": [
- "string"
]
}
], - "actions": [
- {
- "type": "SEND_EMAIL",
- "config": { }
}
]
}{- "id": "form-lead",
- "name": "Kontaktformular",
- "slug": "kontakt",
- "description": "string",
- "enabled": true,
- "fields": [
- {
- "key": "email",
- "label": "E-Mail",
- "type": "TEXT",
- "required": false,
- "placeholder": "string",
- "options": [
- "string"
]
}
], - "actions": [
- {
- "type": "SEND_EMAIL",
- "config": { }
}
], - "createdOn": "2019-08-24"
}Public submission tool for the embedded web form / newsletter signup — no auth (overrides the global bearer security). Validates the submitted values against the form's required fields (422 listing the offending fields on failure); on success stores the submission and runs the configured trigger actions (send email, create contact/opportunity, schedule appointment, newsletter subscribe/unsubscribe). Returns the stored submission incl. which actions were triggered.
| id required | string |
required | object |
| id required | string |
| formId required | string |
required | object |
| submittedAt required | string <date-time> |
Array of objects (TriggeredAction) |
{- "values": {
- "name": "Sara Mena",
- "email": "sara@example.com",
- "newsletter": true
}
}{- "id": "string",
- "formId": "string",
- "values": { },
- "submittedAt": "2019-08-24T14:15:22Z",
- "triggered": [
- {
- "type": "SEND_EMAIL",
- "status": "DONE",
- "detail": "string",
- "ref": "string"
}
]
}| id required | string |
| id required | string |
| formId required | string |
required | object |
| submittedAt required | string <date-time> |
Array of objects (TriggeredAction) |
[- {
- "id": "string",
- "formId": "string",
- "values": { },
- "submittedAt": "2019-08-24T14:15:22Z",
- "triggered": [
- {
- "type": "SEND_EMAIL",
- "status": "DONE",
- "detail": "string",
- "ref": "string"
}
]
}
]| status | string (SupplierStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
| q | string |
| id required | string |
| name required | string |
| status required | string (SupplierStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
[- {
- "id": "string",
- "name": "Rohstoff Handels AG",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE"
}
]| name required | string |
| status | string (SupplierStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string <email> | |
| country | string |
| id required | string |
| name required | string |
| status required | string (SupplierStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
{- "name": "string",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "string"
}{- "id": "string",
- "name": "Rohstoff Handels AG",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE"
}| id required | string |
| id required | string |
| name required | string |
| status required | string (SupplierStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
{- "id": "string",
- "name": "Rohstoff Handels AG",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE"
}| id required | string |
| name required | string |
| status | string (SupplierStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string <email> | |
| country | string |
| id required | string |
| name required | string |
| status required | string (SupplierStatus) Enum: "PROSPECT" "ACTIVE" "BLOCKED" |
string or null <email> | |
| country | string or null |
{- "name": "string",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "string"
}{- "id": "string",
- "name": "Rohstoff Handels AG",
- "status": "PROSPECT",
- "email": "user@example.com",
- "country": "DE"
}| kind | string (MaterialKind) Enum: "RAW_MATERIAL" "ENERGY" |
| q | string |
| id required | string |
| code required | string |
| name required | string |
| kind required | string (MaterialKind) Enum: "RAW_MATERIAL" "ENERGY" |
| unit required | string |
[- {
- "id": "string",
- "code": "STAHL",
- "name": "Stahlblech",
- "kind": "RAW_MATERIAL",
- "unit": "kg"
}
]| code required | string |
| name required | string |
| kind required | string (MaterialKind) Enum: "RAW_MATERIAL" "ENERGY" |
| unit | string |
| id required | string |
| code required | string |
| name required | string |
| kind required | string (MaterialKind) Enum: "RAW_MATERIAL" "ENERGY" |
| unit required | string |
{- "code": "string",
- "name": "string",
- "kind": "RAW_MATERIAL",
- "unit": "string"
}{- "id": "string",
- "code": "STAHL",
- "name": "Stahlblech",
- "kind": "RAW_MATERIAL",
- "unit": "kg"
}| id required | string |
| id required | string |
| code required | string |
| name required | string |
| kind required | string (MaterialKind) Enum: "RAW_MATERIAL" "ENERGY" |
| unit required | string |
{- "id": "string",
- "code": "STAHL",
- "name": "Stahlblech",
- "kind": "RAW_MATERIAL",
- "unit": "kg"
}| id required | string |
| code required | string |
| name required | string |
| kind required | string (MaterialKind) Enum: "RAW_MATERIAL" "ENERGY" |
| unit | string |
| id required | string |
| code required | string |
| name required | string |
| kind required | string (MaterialKind) Enum: "RAW_MATERIAL" "ENERGY" |
| unit required | string |
{- "code": "string",
- "name": "string",
- "kind": "RAW_MATERIAL",
- "unit": "string"
}{- "id": "string",
- "code": "STAHL",
- "name": "Stahlblech",
- "kind": "RAW_MATERIAL",
- "unit": "kg"
}| supplierId | string |
| materialId | string |
| id required | string |
| supplierId required | string |
| supplierName | string |
| materialId required | string |
| materialName | string |
| currency required | string = 3 characters |
| leadTimeDays required | integer Lead time in days. |
object (DateRange) Validity period. | |
required | Array of objects (Tier) |
[- {
- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "materialId": "string",
- "materialName": "string",
- "currency": "EUR",
- "leadTimeDays": 0,
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "tiers": [
- {
- "minQuantity": 1,
- "unitPrice": 0
}
]
}
]| supplierId required | string |
| materialId required | string |
| currency required | string = 3 characters |
| leadTimeDays required | integer |
| validFrom | string <date> |
| validUntil | string or null <date> |
required | Array of objects (Tier) non-empty |
| id required | string |
| supplierId required | string |
| supplierName | string |
| materialId required | string |
| materialName | string |
| currency required | string = 3 characters |
| leadTimeDays required | integer Lead time in days. |
object (DateRange) Validity period. | |
required | Array of objects (Tier) |
{- "supplierId": "string",
- "materialId": "string",
- "currency": "str",
- "leadTimeDays": 0,
- "validFrom": "2019-08-24",
- "validUntil": "2019-08-24",
- "tiers": [
- {
- "minQuantity": 1,
- "unitPrice": 0
}
]
}{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "materialId": "string",
- "materialName": "string",
- "currency": "EUR",
- "leadTimeDays": 0,
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "tiers": [
- {
- "minQuantity": 1,
- "unitPrice": 0
}
]
}| id required | string |
| id required | string |
| supplierId required | string |
| supplierName | string |
| materialId required | string |
| materialName | string |
| currency required | string = 3 characters |
| leadTimeDays required | integer Lead time in days. |
object (DateRange) Validity period. | |
required | Array of objects (Tier) |
{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "materialId": "string",
- "materialName": "string",
- "currency": "EUR",
- "leadTimeDays": 0,
- "validity": {
- "from": "2019-08-24",
- "until": "2019-08-24"
}, - "tiers": [
- {
- "minQuantity": 1,
- "unitPrice": 0
}
]
}Returns the unit price applicable for supplier + material + quantity (best tier) and the lead time.
| supplierId required | string |
| materialId required | string |
| quantity | integer >= 1 Default: 1 |
| supplierId required | string |
| materialId required | string |
| quantity required | integer |
| unitPrice required | number |
| currency | string |
| leadTimeDays required | integer |
| contractId | string or null |
{- "supplierId": "string",
- "materialId": "string",
- "quantity": 0,
- "unitPrice": 0,
- "currency": "string",
- "leadTimeDays": 0,
- "contractId": "string"
}| supplierId | string |
| status | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| id required | string |
| supplierId required | string |
| supplierName | string |
| status required | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| orderDate required | string <date> |
| expectedDeliveryDate | string or null <date> orderDate + max. lead time. |
required | Array of objects (Line1) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| note | string or null |
[- {
- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "expectedDeliveryDate": "2019-08-24",
- "lines": [
- {
- "materialId": "string",
- "materialName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "lineTotal": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "note": "string"
}
]| supplierId required | string |
required | Array of objects (LineWrite1) non-empty |
| note | string or null |
| id required | string |
| supplierId required | string |
| supplierName | string |
| status required | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| orderDate required | string <date> |
| expectedDeliveryDate | string or null <date> orderDate + max. lead time. |
required | Array of objects (Line1) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| note | string or null |
{- "supplierId": "string",
- "lines": [
- {
- "materialId": "string",
- "quantity": 1,
- "unitPrice": 0
}
], - "note": "string"
}{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "expectedDeliveryDate": "2019-08-24",
- "lines": [
- {
- "materialId": "string",
- "materialName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "lineTotal": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "note": "string"
}| id required | string |
| id required | string |
| supplierId required | string |
| supplierName | string |
| status required | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| orderDate required | string <date> |
| expectedDeliveryDate | string or null <date> orderDate + max. lead time. |
required | Array of objects (Line1) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| note | string or null |
{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "expectedDeliveryDate": "2019-08-24",
- "lines": [
- {
- "materialId": "string",
- "materialName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "lineTotal": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "note": "string"
}Above the threshold → PENDING_APPROVAL, otherwise APPROVED.
| id required | string |
| id required | string |
| supplierId required | string |
| supplierName | string |
| status required | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| orderDate required | string <date> |
| expectedDeliveryDate | string or null <date> orderDate + max. lead time. |
required | Array of objects (Line1) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| note | string or null |
{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "expectedDeliveryDate": "2019-08-24",
- "lines": [
- {
- "materialId": "string",
- "materialName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "lineTotal": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "note": "string"
}| id required | string |
| approverId required | string Person (ACMEhr) making the decision. |
| decision required | string Enum: "APPROVE" "REJECT" |
| comment | string or null |
| id required | string |
| supplierId required | string |
| supplierName | string |
| status required | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| orderDate required | string <date> |
| expectedDeliveryDate | string or null <date> orderDate + max. lead time. |
required | Array of objects (Line1) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| note | string or null |
{- "approverId": "string",
- "decision": "APPROVE",
- "comment": "string"
}{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "expectedDeliveryDate": "2019-08-24",
- "lines": [
- {
- "materialId": "string",
- "materialName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "lineTotal": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "note": "string"
}Books the goods receipt and increases the material stock.
| id required | string |
| id required | string |
| supplierId required | string |
| supplierName | string |
| status required | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| orderDate required | string <date> |
| expectedDeliveryDate | string or null <date> orderDate + max. lead time. |
required | Array of objects (Line1) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| note | string or null |
{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "expectedDeliveryDate": "2019-08-24",
- "lines": [
- {
- "materialId": "string",
- "materialName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "lineTotal": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "note": "string"
}| id required | string |
| id required | string |
| supplierId required | string |
| supplierName | string |
| status required | string (SupplyOrderStatus) Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "RECEIVED" "CANCELLED" |
| orderDate required | string <date> |
| expectedDeliveryDate | string or null <date> orderDate + max. lead time. |
required | Array of objects (Line1) |
required | object (Money) Monetary amount. |
object (Approval) E-approval status of an order/procurement. | |
| note | string or null |
{- "id": "string",
- "supplierId": "string",
- "supplierName": "string",
- "status": "CREATED",
- "orderDate": "2019-08-24",
- "expectedDeliveryDate": "2019-08-24",
- "lines": [
- {
- "materialId": "string",
- "materialName": "string",
- "quantity": 0,
- "unitPrice": 0,
- "lineTotal": 0
}
], - "total": {
- "amount": 50000,
- "currency": "EUR",
- "unlimited": false
}, - "approval": {
- "required": true,
- "approverId": "string",
- "decision": "APPROVE",
- "decidedOn": "2019-08-24",
- "comment": "string"
}, - "note": "string"
}| id required | string |
| materialId required | string |
| available required | number Available quantity in the material's unit. |
{- "materialId": "string",
- "available": 0
}Reduces available stock by the produced quantity. Called by the production cycle.
| id required | string |
| quantity required | number >= 0 Quantity to consume. |
| materialId required | string |
| available required | number Available quantity in the material's unit. |
{- "quantity": 0
}{- "materialId": "string",
- "available": 0
}| productId required | string |
| laborUnits required | number Labor units per piece. |
| energyUnits required | number Energy per piece (kWh). |
required | Array of objects (BomLine) |
[- {
- "productId": "string",
- "laborUnits": 0,
- "energyUnits": 0,
- "lines": [
- {
- "materialId": "string",
- "quantity": 0
}
]
}
]| id required | string Product ID. |
| productId required | string |
| laborUnits required | number Labor units per piece. |
| energyUnits required | number Energy per piece (kWh). |
required | Array of objects (BomLine) |
{- "productId": "string",
- "laborUnits": 0,
- "energyUnits": 0,
- "lines": [
- {
- "materialId": "string",
- "quantity": 0
}
]
}| id required | string Product ID. |
| laborUnits required | number |
| energyUnits required | number |
required | Array of objects (BomLine) |
| productId required | string |
| laborUnits required | number Labor units per piece. |
| energyUnits required | number Energy per piece (kWh). |
required | Array of objects (BomLine) |
{- "laborUnits": 0,
- "energyUnits": 0,
- "lines": [
- {
- "materialId": "string",
- "quantity": 0
}
]
}{- "productId": "string",
- "laborUnits": 0,
- "energyUnits": 0,
- "lines": [
- {
- "materialId": "string",
- "quantity": 0
}
]
}Planned daily capacity from factory/port workers (availability from ACMEhr) and the labor/port units per worker and day.
| factoryWorkers required | integer Available factory workers (from ACMEhr). |
| laborUnitsPerWorkerDay required | number Labor units per worker and day. |
| factoryLaborUnitsPerDay required | number Total labor capacity/day (workers × units). |
| harborWorkers required | integer Available port workers (shipping). |
| harborUnitsPerWorkerDay required | integer Shipping units per port worker and day. |
| harborUnitsPerDay required | integer Total shipping capacity/day. |
{- "factoryWorkers": 0,
- "laborUnitsPerWorkerDay": 0,
- "factoryLaborUnitsPerDay": 0,
- "harborWorkers": 0,
- "harborUnitsPerWorkerDay": 0,
- "harborUnitsPerDay": 0
}Aggregated material demand over the horizon, derived from the open production contracts (ACMEcrm) and the BOMs. Basis for procurement in ACMEsupply.
| horizonDays | integer >= 1 Default: 30 Planning horizon in days. |
| horizonDays required | integer |
required | Array of objects (SupplyProjectionItem) |
{- "horizonDays": 0,
- "materials": [
- {
- "materialId": "string",
- "requiredQuantity": 0
}
]
}Checks a contract specification (products, quantities, delivery date) against capacity and material availability. Non-mutating. Returns feasible and — if not — the scarce resources (worker or material) with the shortfall.
required | Array of objects (FeasibilityItem) non-empty |
| dueDate | string <date> Desired delivery date (leave open = earliest possible). |
| feasible required | boolean |
| earliestDate | string <date> Earliest possible delivery date at current capacity (if computable). |
| requiredLaborUnits required | number Total labor units required for the specification. |
required | Array of objects (MaterialRequirement) |
required | Array of objects (ScarceResource) Scarce resources; empty when feasible=true. |
{- "items": [
- {
- "productId": "string",
- "quantity": 1
}
], - "dueDate": "2019-08-24"
}{- "feasible": true,
- "earliestDate": "2019-08-24",
- "requiredLaborUnits": 0,
- "requiredMaterials": [
- {
- "materialId": "string",
- "requiredQuantity": 0,
- "availableQuantity": 0
}
], - "scarce": [
- {
- "resource": "WORKER",
- "reference": "string",
- "shortfall": 0
}
]
}Execution layer — production orders (planning board), the weekly shift plan and the live machine monitor (OEE). Backs the ACMEbuild "Fertigung" views.
Open and recently closed production orders, each in one of the board stages GEPLANT · RUESTEN · IN_ARBEIT · PRUEFUNG · FERTIG. Filter by stage to fetch a single column.
| stage | string (OrderStage) Enum: "GEPLANT" "RUESTEN" "IN_ARBEIT" "PRUEFUNG" "FERTIG" Restrict to a single board stage. |
| id required | string |
| orderNo required | string Human order number |
| productId | string Product being manufactured (see /products/{id}/bom). |
| productName | string Denormalised product name for display. |
| quantity required | integer >= 1 Pieces to produce. |
| machine | string or null Assigned machine (e.g. CNC-03), if any. |
| ownerInitials | string or null Responsible planner's initials. |
| stage required | string (OrderStage) Enum: "GEPLANT" "RUESTEN" "IN_ARBEIT" "PRUEFUNG" "FERTIG" Stage of a production order on the planning board. |
| dueDate | string or null <date> |
[- {
- "id": "string",
- "orderNo": "string",
- "productId": "string",
- "productName": "string",
- "quantity": 1,
- "machine": "string",
- "ownerInitials": "string",
- "stage": "GEPLANT",
- "dueDate": "2019-08-24"
}
]Schedules a new order; it enters the board in GEPLANT unless a stage is given.
| productId required | string |
| quantity required | integer >= 1 |
| machine | string or null |
| ownerInitials | string or null |
| stage | string (OrderStage) Enum: "GEPLANT" "RUESTEN" "IN_ARBEIT" "PRUEFUNG" "FERTIG" Stage of a production order on the planning board. |
| dueDate | string or null <date> |
| id required | string |
| orderNo required | string Human order number |
| productId | string Product being manufactured (see /products/{id}/bom). |
| productName | string Denormalised product name for display. |
| quantity required | integer >= 1 Pieces to produce. |
| machine | string or null Assigned machine (e.g. CNC-03), if any. |
| ownerInitials | string or null Responsible planner's initials. |
| stage required | string (OrderStage) Enum: "GEPLANT" "RUESTEN" "IN_ARBEIT" "PRUEFUNG" "FERTIG" Stage of a production order on the planning board. |
| dueDate | string or null <date> |
{- "productId": "string",
- "quantity": 1,
- "machine": "string",
- "ownerInitials": "string",
- "stage": "GEPLANT",
- "dueDate": "2019-08-24"
}{- "id": "string",
- "orderNo": "string",
- "productId": "string",
- "productName": "string",
- "quantity": 1,
- "machine": "string",
- "ownerInitials": "string",
- "stage": "GEPLANT",
- "dueDate": "2019-08-24"
}Moves an order between board stages (drag & drop) or reassigns its machine. Non-null fields are applied; others are left unchanged.
| id required | string Production order ID. |
| stage | string (OrderStage) Enum: "GEPLANT" "RUESTEN" "IN_ARBEIT" "PRUEFUNG" "FERTIG" Stage of a production order on the planning board. |
| machine | string or null |
| ownerInitials | string or null |
| id required | string |
| orderNo required | string Human order number |
| productId | string Product being manufactured (see /products/{id}/bom). |
| productName | string Denormalised product name for display. |
| quantity required | integer >= 1 Pieces to produce. |
| machine | string or null Assigned machine (e.g. CNC-03), if any. |
| ownerInitials | string or null Responsible planner's initials. |
| stage required | string (OrderStage) Enum: "GEPLANT" "RUESTEN" "IN_ARBEIT" "PRUEFUNG" "FERTIG" Stage of a production order on the planning board. |
| dueDate | string or null <date> |
{- "stage": "GEPLANT",
- "machine": "string",
- "ownerInitials": "string"
}{- "id": "string",
- "orderNo": "string",
- "productId": "string",
- "productName": "string",
- "quantity": 1,
- "machine": "string",
- "ownerInitials": "string",
- "stage": "GEPLANT",
- "dueDate": "2019-08-24"
}The current week's shift matrix — three shifts (early/late/night) × six working days (Mon–Sat), each cell FREE, FULL or PARTIAL. Basis for the daily labor capacity.
| week | string Calendar week label |
required | Array of objects (ShiftRow) |
{- "week": "string",
- "rows": [
- {
- "shift": "EARLY",
- "label": "string",
- "time": "string",
- "cells": [
- "FREE",
- "FREE",
- "FREE",
- "FREE",
- "FREE",
- "FREE"
]
}
]
}required | Array of objects (ShiftRow) |
| week | string Calendar week label |
required | Array of objects (ShiftRow) |
{- "rows": [
- {
- "shift": "EARLY",
- "label": "string",
- "time": "string",
- "cells": [
- "FREE",
- "FREE",
- "FREE",
- "FREE",
- "FREE",
- "FREE"
]
}
]
}{- "week": "string",
- "rows": [
- {
- "shift": "EARLY",
- "label": "string",
- "time": "string",
- "cells": [
- "FREE",
- "FREE",
- "FREE",
- "FREE",
- "FREE",
- "FREE"
]
}
]
}Live status of the shop-floor machines with OEE and its availability / performance / quality components, plus the currently running order and its progress.
| id required | string |
| name required | string Machine label |
| status required | string (MachineStatus) Enum: "RUNNING" "SETUP" "FAULT" "MAINTENANCE" "IDLE" Live machine state driving the tile color. |
| oee required | integer [ 0 .. 100 ] Overall Equipment Effectiveness (%). |
| availability required | integer [ 0 .. 100 ] OEE availability component (%). |
| performance required | integer [ 0 .. 100 ] OEE performance component (%). |
| quality required | integer [ 0 .. 100 ] OEE quality component (%). |
| progress required | integer [ 0 .. 100 ] Progress of the running order (%). |
| currentOrder | string or null Running order + product, or a note (e.g. maintenance until). |
[- {
- "id": "string",
- "name": "string",
- "status": "RUNNING",
- "oee": 100,
- "availability": 100,
- "performance": 100,
- "quality": 100,
- "progress": 100,
- "currentOrder": "string"
}
]