> For the complete documentation index, see [llms.txt](https://hub.equipme.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hub.equipme.io/development/api-reference-app/models.md).

# Models

## The Address object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Address":{"required":["id","self"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address.","nullable":true},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country.","nullable":true},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true},"id":{"type":"integer","description":"The id to identify the address in the system.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"Postal address for the shipment of goods or invoices."},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The AddressCreateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AddressCreateModel":{"required":["city","countryCode"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address."},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country."},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true}},"additionalProperties":false}}}}
```

## The AddressGetModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AddressGetModel":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"firstLine":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"additional":{"type":"string","nullable":true},"countryISO2":{"type":"string","nullable":true},"administrativeAreaKey":{"type":"string","nullable":true},"administrativeArea":{"type":"string","nullable":true},"dependentLocality":{"type":"string","nullable":true},"correlationID":{"type":"string","format":"uuid"},"phonePrimary":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The AddressPatchModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AddressPatchModel":{"required":["city","countryCode"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address."},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country."},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true}},"additionalProperties":false}}}}
```

## The AddressRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AddressRequest":{"type":"object","properties":{"firstLine":{"type":"string","nullable":true},"additional":{"type":"string","nullable":true},"administrativeAreaKey":{"type":"string","nullable":true},"administrativeArea":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"countryISO2":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"dependentLocality":{"type":"string","nullable":true},"phonePrimary":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The AddressResponse object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AddressResponse":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"firstLine":{"type":"string","nullable":true},"additional":{"type":"string","nullable":true},"administrativeAreaKey":{"type":"string","nullable":true},"administrativeArea":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"countryISO2":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"dependentLocality":{"type":"string","nullable":true},"phonePrimary":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The ApprovalRequestCreate object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ApprovalRequestCreate":{"type":"object","properties":{"procurementRequestReference":{"type":"array","items":{"type":"integer","format":"int32"},"description":"The procurement requests (SALES.CartItems) for which the approval should be processed","nullable":true},"predecessorRequest":{"type":"integer","description":"The ID of the predecessor approval request if there is one. Create a link between two requests for\ninformational purpose and history.","format":"int32","nullable":true},"requestedBy":{"type":"integer","description":"The user requesting the procurement order","format":"int32"},"requestedFor":{"type":"integer","description":"The user for whom the approval request is created","format":"int32"},"assignedTo":{"type":"integer","description":"The user who should authorize the request","format":"int32","nullable":true},"assignedToGroup":{"type":"integer","description":"The group of users which should authorize the request","format":"int32","nullable":true},"title":{"type":"string","description":"A short title which describes the approval source","nullable":true},"description":{"type":"string","description":"More details on the request","nullable":true},"priority":{"type":"string","description":"A priority which indicates the urgency of the request","nullable":true},"dueDate":{"type":"string","description":"Deadline for the approval","format":"date-time","nullable":true},"workflowName":{"type":"string","description":"Optional: The name of the workflow which triggered the approval","nullable":true},"workflowUrl":{"type":"string","description":"Webhook URL to the source workflow","nullable":true},"requestCorrelation":{"type":"string","description":"This correlation can be used to group requests of one approval step together.\nFor example, if multiple approval requests for multiple department mangers are created for one procurement request, the correlation ID can be used to link those together.","format":"uuid"}},"additionalProperties":false,"description":"Data transfer object for creating a new approval request"}}}}
```

## The ApprovalRequestCreateRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ApprovalRequestCreateRequest":{"type":"object","properties":{"approvalRequest":{"$ref":"#/components/schemas/ApprovalRequestCreate"}},"additionalProperties":false,"description":"Create a new approval request task. This task can be assigned to a specific employee or a group of\nemployees. An approval task can be linked to a cart item (procurement request)."},"ApprovalRequestCreate":{"type":"object","properties":{"procurementRequestReference":{"type":"array","items":{"type":"integer","format":"int32"},"description":"The procurement requests (SALES.CartItems) for which the approval should be processed","nullable":true},"predecessorRequest":{"type":"integer","description":"The ID of the predecessor approval request if there is one. Create a link between two requests for\ninformational purpose and history.","format":"int32","nullable":true},"requestedBy":{"type":"integer","description":"The user requesting the procurement order","format":"int32"},"requestedFor":{"type":"integer","description":"The user for whom the approval request is created","format":"int32"},"assignedTo":{"type":"integer","description":"The user who should authorize the request","format":"int32","nullable":true},"assignedToGroup":{"type":"integer","description":"The group of users which should authorize the request","format":"int32","nullable":true},"title":{"type":"string","description":"A short title which describes the approval source","nullable":true},"description":{"type":"string","description":"More details on the request","nullable":true},"priority":{"type":"string","description":"A priority which indicates the urgency of the request","nullable":true},"dueDate":{"type":"string","description":"Deadline for the approval","format":"date-time","nullable":true},"workflowName":{"type":"string","description":"Optional: The name of the workflow which triggered the approval","nullable":true},"workflowUrl":{"type":"string","description":"Webhook URL to the source workflow","nullable":true},"requestCorrelation":{"type":"string","description":"This correlation can be used to group requests of one approval step together.\nFor example, if multiple approval requests for multiple department mangers are created for one procurement request, the correlation ID can be used to link those together.","format":"uuid"}},"additionalProperties":false,"description":"Data transfer object for creating a new approval request"}}}}
```

## The ApprovalRequestPatchRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ApprovalRequestPatchRequest":{"type":"object","properties":{"patchDocument":{"$ref":"#/components/schemas/JsonPatchDocument_ApprovalRequestPatch"}},"additionalProperties":false},"JsonPatchDocument_ApprovalRequestPatch":{"type":"object","properties":{"operations":{"type":"array","items":{"$ref":"#/components/schemas/Operation_ApprovalRequestPatch"},"nullable":true}},"additionalProperties":false},"Operation_ApprovalRequestPatch":{"type":"object","properties":{"value":{"nullable":true},"path":{"type":"string","nullable":true},"op":{"type":"string","nullable":true},"from":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The AttributeDefinitionReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AttributeDefinitionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute definition.","format":"int32"},"name":{"type":"string","description":"The name of the attribute.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The AttributeValueReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AttributeValueReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute value.","format":"int32"},"displayValue":{"type":"string","description":"The value for the attribute to be displayed.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The AuthorizationRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AuthorizationRequest":{"required":["id","self"],"type":"object","properties":{"requestingCompany":{"$ref":"#/components/schemas/CompanyReference"},"approvingCompany":{"$ref":"#/components/schemas/CompanyReference"},"creator":{"$ref":"#/components/schemas/EmployeeReference"},"processor":{"$ref":"#/components/schemas/EmployeeReference"},"type":{"$ref":"#/components/schemas/AuthorizationRequestType"},"status":{"$ref":"#/components/schemas/AuthorizationRequestStatus"},"created":{"type":"string","description":"The date and time the authorization request was created.","format":"date-time"},"completed":{"type":"string","description":"The date and time the authorization request was completed.","format":"date-time","nullable":true},"note":{"type":"string","description":"A note on the authorization request. Supports html formatted text including inline css styles.","nullable":true},"id":{"type":"integer","description":"The identifier of the authorization request.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CompanyReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the company in the system.","format":"int64"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"AuthorizationRequestType":{"enum":["orderAuthorization"],"type":"string"},"AuthorizationRequestStatus":{"enum":["new","inprocess","approved","denied"],"type":"string"}}}}
```

## The AuthorizationRequestCreate object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AuthorizationRequestCreate":{"required":["type"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/AuthorizationRequestType"},"note":{"maxLength":10000,"minLength":0,"type":"string","description":"A note on the authorization request. Supports html formatted text including inline css styles.","nullable":true}},"additionalProperties":false},"AuthorizationRequestType":{"enum":["orderAuthorization"],"type":"string"}}}}
```

## The AuthorizationRequestList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AuthorizationRequestList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/AuthorizationRequest"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"AuthorizationRequest":{"required":["id","self"],"type":"object","properties":{"requestingCompany":{"$ref":"#/components/schemas/CompanyReference"},"approvingCompany":{"$ref":"#/components/schemas/CompanyReference"},"creator":{"$ref":"#/components/schemas/EmployeeReference"},"processor":{"$ref":"#/components/schemas/EmployeeReference"},"type":{"$ref":"#/components/schemas/AuthorizationRequestType"},"status":{"$ref":"#/components/schemas/AuthorizationRequestStatus"},"created":{"type":"string","description":"The date and time the authorization request was created.","format":"date-time"},"completed":{"type":"string","description":"The date and time the authorization request was completed.","format":"date-time","nullable":true},"note":{"type":"string","description":"A note on the authorization request. Supports html formatted text including inline css styles.","nullable":true},"id":{"type":"integer","description":"The identifier of the authorization request.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CompanyReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the company in the system.","format":"int64"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"AuthorizationRequestType":{"enum":["orderAuthorization"],"type":"string"},"AuthorizationRequestStatus":{"enum":["new","inprocess","approved","denied"],"type":"string"}}}}
```

## The AuthorizationRequestSortParameter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AuthorizationRequestSortParameter":{"enum":["creationDate"],"type":"string"}}}}
```

## The AuthorizationRequestStatus object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AuthorizationRequestStatus":{"enum":["new","inprocess","approved","denied"],"type":"string"}}}}
```

## The AuthorizationRequestType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"AuthorizationRequestType":{"enum":["orderAuthorization"],"type":"string"}}}}
```

## The BillingAddress object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"BillingAddress":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"name":{"type":"string","nullable":true},"email":{"type":"string","nullable":true},"isDefault":{"type":"boolean"},"created":{"type":"string","format":"date-time"},"addressId":{"type":"integer","format":"int32"},"totalCostCenter":{"type":"integer","format":"int32"},"address":{"$ref":"#/components/schemas/AddressGetModel"},"notes":{"type":"string","nullable":true}},"additionalProperties":false},"AddressGetModel":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"firstLine":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"additional":{"type":"string","nullable":true},"countryISO2":{"type":"string","nullable":true},"administrativeAreaKey":{"type":"string","nullable":true},"administrativeArea":{"type":"string","nullable":true},"dependentLocality":{"type":"string","nullable":true},"correlationID":{"type":"string","format":"uuid"},"phonePrimary":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The BillingAddressResponse object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"BillingAddressResponse":{"required":["self"],"type":"object","properties":{"name":{"type":"string","nullable":true},"isDefault":{"type":"boolean"},"email":{"type":"string","nullable":true},"totalCostCenter":{"type":"integer","format":"int32"},"address":{"$ref":"#/components/schemas/AddressResponse"},"notes":{"type":"string","nullable":true},"id":{"type":"integer","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"AddressResponse":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"firstLine":{"type":"string","nullable":true},"additional":{"type":"string","nullable":true},"administrativeAreaKey":{"type":"string","nullable":true},"administrativeArea":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"countryISO2":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"dependentLocality":{"type":"string","nullable":true},"phonePrimary":{"type":"string","nullable":true}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The BillingCycle object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"BillingCycle":{"enum":["none","daily","weekly","biweekly","monthly","annually","triennial"],"type":"string"}}}}
```

## The BomItem object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"BomItem":{"required":["quantity"],"type":"object","properties":{"quantity":{"maximum":2147483647,"minimum":1,"type":"integer","description":"Quantity of the product in the bill of materials","format":"int32","default":1},"product":{"$ref":"#/components/schemas/ProductReference"}},"additionalProperties":false},"ProductReference":{"required":["id","name","partNumber","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the product.","format":"int64"},"name":{"minLength":1,"type":"string","description":"The name of the product."},"partNumber":{"minLength":1,"type":"string","description":"The manufacturer part number of the product."},"externalId":{"type":"string","description":"The id of the product in an external application like an ERP. Can be used for synchronization correlation.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The CompanyReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CompanyReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the company in the system.","format":"int64"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The Context object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Context":{"enum":["customer","supplier","impersonated"],"type":"string"}}}}
```

## The CostCenter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CostCenter":{"required":["self"],"type":"object","properties":{"description":{"type":"string","nullable":true},"id":{"type":"integer","format":"int32"},"code":{"type":"string","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The CostCenterManager object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CostCenterManager":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"name":{"type":"string","nullable":true},"email":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The CostCenterResponse object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CostCenterResponse":{"required":["self"],"type":"object","properties":{"description":{"type":"string","nullable":true},"customerId":{"type":"integer","format":"int32"},"managers":{"type":"array","items":{"$ref":"#/components/schemas/CostCenterManager"},"nullable":true},"billingAddress":{"$ref":"#/components/schemas/BillingAddress"},"id":{"type":"integer","format":"int32"},"code":{"type":"string","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CostCenterManager":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"name":{"type":"string","nullable":true},"email":{"type":"string","nullable":true}},"additionalProperties":false},"BillingAddress":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"name":{"type":"string","nullable":true},"email":{"type":"string","nullable":true},"isDefault":{"type":"boolean"},"created":{"type":"string","format":"date-time"},"addressId":{"type":"integer","format":"int32"},"totalCostCenter":{"type":"integer","format":"int32"},"address":{"$ref":"#/components/schemas/AddressGetModel"},"notes":{"type":"string","nullable":true}},"additionalProperties":false},"AddressGetModel":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"firstLine":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"additional":{"type":"string","nullable":true},"countryISO2":{"type":"string","nullable":true},"administrativeAreaKey":{"type":"string","nullable":true},"administrativeArea":{"type":"string","nullable":true},"dependentLocality":{"type":"string","nullable":true},"correlationID":{"type":"string","format":"uuid"},"phonePrimary":{"type":"string","nullable":true}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The CreateBillingAddressRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CreateBillingAddressRequest":{"type":"object","properties":{"name":{"type":"string","nullable":true},"address":{"$ref":"#/components/schemas/AddressRequest"},"email":{"type":"string","nullable":true},"notes":{"type":"string","nullable":true}},"additionalProperties":false},"AddressRequest":{"type":"object","properties":{"firstLine":{"type":"string","nullable":true},"additional":{"type":"string","nullable":true},"administrativeAreaKey":{"type":"string","nullable":true},"administrativeArea":{"type":"string","nullable":true},"city":{"type":"string","nullable":true},"countryISO2":{"type":"string","nullable":true},"street":{"type":"string","nullable":true},"zip":{"type":"string","nullable":true},"number":{"type":"string","nullable":true},"dependentLocality":{"type":"string","nullable":true},"phonePrimary":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The CreateCostCenterRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CreateCostCenterRequest":{"type":"object","properties":{"code":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"managerIds":{"type":"array","items":{"type":"integer","format":"int32"},"nullable":true},"billingAddressId":{"type":"integer","format":"int32","nullable":true}},"additionalProperties":false}}}}
```

## The CreatePurchaseOrderRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CreatePurchaseOrderRequest":{"type":"object","properties":{"requestItems":{"type":"array","items":{"$ref":"#/components/schemas/PurchaseOrderRequestItem"},"description":"Gets or sets the collection of items to be included in the order request.\nEach item in the collection is represented using the equipme.api.Domain.Procurement.Orders.PurchaseOrders.Dto.PurchaseOrderRequestItem class,\nwhich contains details such as the request reference ID and additional notes.","nullable":true},"note":{"type":"string","description":"Gets or sets additional details or comments associated with the order request.\nThis allows including specific instructions or contextual information relevant to the order.","nullable":true},"customOrderReference":{"maxLength":100,"minLength":0,"type":"string","description":"Gets or sets the custom reference identifier for the order.\nThis property can be used to provide a unique, user-defined\nreference for tracking or associating the order with an external system.","nullable":true}},"additionalProperties":false,"description":"Represents a request payload for creating an order, which includes details such as items to be ordered,\na custom reference, and additional notes."},"PurchaseOrderRequestItem":{"type":"object","properties":{"requestReferenceId":{"type":"integer","description":"Gets or sets the unique identifier for the referenced request associated with the order item.","format":"int32"},"note":{"type":"string","description":"Gets or sets additional information or comments associated with the order item.","nullable":true}},"additionalProperties":false,"description":"Represents a model used to create a new order item with details like request reference ID and additional notes."}}}}
```

## The CreateRequestItem object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CreateRequestItem":{"type":"object","properties":{"requestAction":{"$ref":"#/components/schemas/RequestItemAction"},"requestedBy":{"type":"integer","description":"The user which created the request (Can be the same user, which is assigned, or another user which assigns orders for other employees.","format":"int32"},"locationAssignment":{"type":"integer","description":"The location assigned.","format":"int32","nullable":true},"employeeAssignment":{"type":"integer","description":"The employee for which the order is placed.","format":"int32","nullable":true},"organizationalUnitAssignment":{"type":"integer","description":"Represents the unique identifier of the organizational unit associated with the cart item.\nThis property links the cart item to a specific organizational unit for tracking and management purposes.","format":"int32","nullable":true},"productOfferId":{"type":"integer","description":"The offer which should be ordered","format":"int32"},"requestedDeliveryDate":{"type":"string","description":"Desired delivery date","format":"date-time","nullable":true},"deviatingDeliveryAddress":{"$ref":"#/components/schemas/AddressCreateModel"},"note":{"type":"string","description":"Additional request notes","nullable":true}},"additionalProperties":false},"RequestItemAction":{"enum":["delivery","order","change","cancellation","other"],"type":"string"},"AddressCreateModel":{"required":["city","countryCode"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address."},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country."},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true}},"additionalProperties":false}}}}
```

## The CreateRequestRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CreateRequestRequest":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CreateRequestItem"},"nullable":true}},"additionalProperties":false},"CreateRequestItem":{"type":"object","properties":{"requestAction":{"$ref":"#/components/schemas/RequestItemAction"},"requestedBy":{"type":"integer","description":"The user which created the request (Can be the same user, which is assigned, or another user which assigns orders for other employees.","format":"int32"},"locationAssignment":{"type":"integer","description":"The location assigned.","format":"int32","nullable":true},"employeeAssignment":{"type":"integer","description":"The employee for which the order is placed.","format":"int32","nullable":true},"organizationalUnitAssignment":{"type":"integer","description":"Represents the unique identifier of the organizational unit associated with the cart item.\nThis property links the cart item to a specific organizational unit for tracking and management purposes.","format":"int32","nullable":true},"productOfferId":{"type":"integer","description":"The offer which should be ordered","format":"int32"},"requestedDeliveryDate":{"type":"string","description":"Desired delivery date","format":"date-time","nullable":true},"deviatingDeliveryAddress":{"$ref":"#/components/schemas/AddressCreateModel"},"note":{"type":"string","description":"Additional request notes","nullable":true}},"additionalProperties":false},"RequestItemAction":{"enum":["delivery","order","change","cancellation","other"],"type":"string"},"AddressCreateModel":{"required":["city","countryCode"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address."},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country."},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true}},"additionalProperties":false}}}}
```

## The Currency object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Currency":{"enum":["EUR"],"type":"string","description":"Supported currencies in ISO 4217 format"}}}}
```

## The CustomerReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The Employee object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Employee":{"required":["id","self","username"],"type":"object","properties":{"employer":{"$ref":"#/components/schemas/CompanyReference"},"workplace":{"$ref":"#/components/schemas/LocationReference"},"supervisor":{"$ref":"#/components/schemas/EmployeeReference"},"employeeNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Employee number in the company. Usually created by the HR system/process.","nullable":true},"position":{"maxLength":150,"minLength":0,"type":"string","description":"The job position or job title of the employee","nullable":true},"privateEmail":{"maxLength":100,"minLength":0,"type":"string","description":"The private email address.","nullable":true},"phoneBusiness":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"notes":{"maxLength":1000,"minLength":0,"type":"string","description":"Free text notes.","nullable":true},"created":{"type":"string","description":"The date and time the data record was created.","format":"date-time"},"onboardingDate":{"type":"string","description":"The employee onboarding date.","format":"date-time","nullable":true},"offboardingDate":{"type":"string","description":"The employee offboarding date.","format":"date-time","nullable":true},"status":{"$ref":"#/components/schemas/EmployeeStatus"},"groups":{"type":"array","items":{"$ref":"#/components/schemas/Group"},"description":"The groups the employee belongs to (departments, teams etc.)","nullable":true},"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CompanyReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the company in the system.","format":"int64"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeStatus":{"enum":["onboarding","active","leave","offboarding","inactive"],"type":"string","description":"Status of an employee"},"Group":{"required":["id","name","self"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/GroupType"},"category":{"type":"string","description":"A customizable category of the group. Can be used to categorize groups independent from the group type.","nullable":true},"companyName":{"maxLength":100,"minLength":0,"type":"string","description":"A customizable company name of the group. Can be used to distinguish same departments between different sub companies of the tenant.","nullable":true},"description":{"type":"string","description":"The description of the group.","nullable":true},"email":{"type":"string","description":"The email address of the group.","nullable":true},"manager":{"type":"array","items":{"$ref":"#/components/schemas/EmployeeReference"},"description":"A list of employee references assigned as managers for a group.","nullable":true},"tags":{"type":"array","items":{"type":"string"},"description":"Assigned tags","nullable":true},"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"GroupType":{"enum":["custom","company","department","project","team"],"type":"string","description":"Type of the group."}}}}
```

## The EmployeeCreateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"EmployeeCreateModel":{"required":["email","firstName","lastName","locationId","username"],"type":"object","properties":{"employeeNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Employee number in the company. Usually created by the HR system/process.","nullable":true},"onboardingDate":{"type":"string","description":"The employee onboarding date.","format":"date-time","nullable":true},"offboardingDate":{"type":"string","description":"The employee offboarding date.","format":"date-time","nullable":true},"invitation":{"$ref":"#/components/schemas/InvitationModel"},"roles":{"type":"array","items":{"$ref":"#/components/schemas/UserRole"},"description":"Specifies the roles assigned to the employee for logging in to Equipme. Default is \"user\".","nullable":true},"email":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The contact mail address."},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee."},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee."},"locationId":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The identifier of the location where the employee works.","format":"int32"},"notes":{"maxLength":1000,"minLength":0,"type":"string","description":"Free text notes.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"phonePrimary":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"position":{"maxLength":150,"minLength":0,"type":"string","description":"The job position or job title of the employee","nullable":true},"status":{"$ref":"#/components/schemas/EmployeeStatus"},"supervisorId":{"type":"integer","description":"The identifier of an employee who is the supervisor for this employee.","format":"int32","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"selfServiceEnabled":{"type":"boolean","description":"Controls whether the employee can access the self-service portal."}},"additionalProperties":false},"InvitationModel":{"type":"object","properties":{"loginMethod":{"$ref":"#/components/schemas/LoginMethod"},"message":{"maxLength":1000,"minLength":0,"type":"string","description":"Additional message which will displayed in the invitation mail below the regular information. Can be used to give the employee further information.","nullable":true}},"additionalProperties":false,"description":"Configures the invitation to be sent to the employee."},"LoginMethod":{"enum":["password","sso"],"type":"string"},"UserRole":{"enum":["administrator","planner","user"],"type":"string","description":"Roles available to be assigned to an employee as a user in Equipme. Options will be extended in the future."},"EmployeeStatus":{"enum":["onboarding","active","leave","offboarding","inactive"],"type":"string","description":"Status of an employee"}}}}
```

## The EmployeeFulfillmentReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"EmployeeFulfillmentReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"phoneBusiness":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The EmployeeList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"EmployeeList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Employee"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Employee":{"required":["id","self","username"],"type":"object","properties":{"employer":{"$ref":"#/components/schemas/CompanyReference"},"workplace":{"$ref":"#/components/schemas/LocationReference"},"supervisor":{"$ref":"#/components/schemas/EmployeeReference"},"employeeNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Employee number in the company. Usually created by the HR system/process.","nullable":true},"position":{"maxLength":150,"minLength":0,"type":"string","description":"The job position or job title of the employee","nullable":true},"privateEmail":{"maxLength":100,"minLength":0,"type":"string","description":"The private email address.","nullable":true},"phoneBusiness":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"notes":{"maxLength":1000,"minLength":0,"type":"string","description":"Free text notes.","nullable":true},"created":{"type":"string","description":"The date and time the data record was created.","format":"date-time"},"onboardingDate":{"type":"string","description":"The employee onboarding date.","format":"date-time","nullable":true},"offboardingDate":{"type":"string","description":"The employee offboarding date.","format":"date-time","nullable":true},"status":{"$ref":"#/components/schemas/EmployeeStatus"},"groups":{"type":"array","items":{"$ref":"#/components/schemas/Group"},"description":"The groups the employee belongs to (departments, teams etc.)","nullable":true},"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CompanyReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the company in the system.","format":"int64"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeStatus":{"enum":["onboarding","active","leave","offboarding","inactive"],"type":"string","description":"Status of an employee"},"Group":{"required":["id","name","self"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/GroupType"},"category":{"type":"string","description":"A customizable category of the group. Can be used to categorize groups independent from the group type.","nullable":true},"companyName":{"maxLength":100,"minLength":0,"type":"string","description":"A customizable company name of the group. Can be used to distinguish same departments between different sub companies of the tenant.","nullable":true},"description":{"type":"string","description":"The description of the group.","nullable":true},"email":{"type":"string","description":"The email address of the group.","nullable":true},"manager":{"type":"array","items":{"$ref":"#/components/schemas/EmployeeReference"},"description":"A list of employee references assigned as managers for a group.","nullable":true},"tags":{"type":"array","items":{"type":"string"},"description":"Assigned tags","nullable":true},"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"GroupType":{"enum":["custom","company","department","project","team"],"type":"string","description":"Type of the group."}}}}
```

## The EmployeeReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The EmployeeSortParameter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"EmployeeSortParameter":{"enum":["mail","firstName","lastName","workplace"],"type":"string","description":"Parameters according to which an employee can be sorted."}}}}
```

## The EmployeeStatus object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"EmployeeStatus":{"enum":["onboarding","active","leave","offboarding","inactive"],"type":"string","description":"Status of an employee"}}}}
```

## The EmployeeUpdateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"EmployeeUpdateModel":{"required":["email","firstName","lastName","locationId","username"],"type":"object","properties":{"email":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The contact mail address."},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee."},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee."},"locationId":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The identifier of the location where the employee works.","format":"int32"},"notes":{"maxLength":1000,"minLength":0,"type":"string","description":"Free text notes.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"phonePrimary":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"position":{"maxLength":150,"minLength":0,"type":"string","description":"The job position or job title of the employee","nullable":true},"status":{"$ref":"#/components/schemas/EmployeeStatus"},"supervisorId":{"type":"integer","description":"The identifier of an employee who is the supervisor for this employee.","format":"int32","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"selfServiceEnabled":{"type":"boolean","description":"Controls whether the employee can access the self-service portal."}},"additionalProperties":false},"EmployeeStatus":{"enum":["onboarding","active","leave","offboarding","inactive"],"type":"string","description":"Status of an employee"}}}}
```

## The ErrorResponse object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ErrorResponse":{"type":"object","properties":{"errorCode":{"type":"string","nullable":true},"errorDescription":{"type":"string","nullable":true},"data":{"nullable":true}},"additionalProperties":false}}}}
```

## The FulfillmentAction object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentAction":{"enum":["process","dispatchDelivery","rejectDelivery","confirmDelivery","processReturnedItem","complete","completeReturnDecommission","cancel"],"type":"string","description":"The action to take on the fulfillment order."}}}}
```

## The FulfillmentAssignment object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentAssignment":{"type":"object","properties":{"location":{"$ref":"#/components/schemas/LocationReference"},"employee":{"$ref":"#/components/schemas/EmployeeFulfillmentReference"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"EmployeeFulfillmentReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"phoneBusiness":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The FulfillmentOrder object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentOrder":{"required":["customer","id","offer","order","orderedBy","self","service","status","transactionType"],"type":"object","properties":{"transactionType":{"$ref":"#/components/schemas/FulfillmentOrderTransactionType"},"status":{"$ref":"#/components/schemas/FulfillmentStatus"},"fulfillmentType":{"$ref":"#/components/schemas/FulfillmentType"},"isPreorder":{"type":"boolean","description":"Indicates whether this order is a preorder. Preorders should only be prepared until ready for delivery and then wait to be requested by the customer before shipment."},"partnerNote":{"type":"string","description":"A note shared with the intermediary partner. (Only for orders placed by partner customers)","nullable":true},"offer":{"$ref":"#/components/schemas/ServiceOfferReference"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"options":{"type":"array","items":{"$ref":"#/components/schemas/FulfillmentServiceOption"},"description":"Reference to the ordered product option versions.","nullable":true},"order":{"$ref":"#/components/schemas/SalesOrderReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"orderedBy":{"$ref":"#/components/schemas/EmployeeFulfillmentReference"},"deliveryAddress":{"$ref":"#/components/schemas/Address"},"billingAddress":{"$ref":"#/components/schemas/Address"},"preferredProvisionDate":{"type":"string","description":"The preferred provision date.","format":"date-time","nullable":true},"serviceInstance":{"$ref":"#/components/schemas/ServiceInstanceReference"},"targetServiceInstance":{"$ref":"#/components/schemas/TargetServiceInstanceReference"},"assignments":{"$ref":"#/components/schemas/FulfillmentAssignment"},"bomItems":{"type":"array","items":{"$ref":"#/components/schemas/BomItem"},"description":"Items in the bom which are required to fulfill the order.","nullable":true},"totalRecurringPrice":{"type":"number","description":"Sum of the recurring prices of the service offer and the ordered options in this item.","format":"double"},"totalPurchasePrice":{"type":"number","description":"Sum of the purchase prices of the service offer and the ordered options in this item.","format":"double"},"id":{"type":"integer","description":"The identifier of the order.","format":"int64"},"externalId":{"type":"string","description":"The identifier of the order in an external app.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"FulfillmentOrderTransactionType":{"enum":["order","return","change","swap","cancellation"],"type":"string","description":"The action triggered by a fulfillment order."},"FulfillmentStatus":{"enum":["new","inprocess","ready-for-delivery","delivery-requested-outbound","in-delivery-outbound","delivered-outbound","delivery-returned-outbound","processed","cancelled"],"type":"string","description":"Status of the fulfillment process."},"FulfillmentType":{"enum":["in-house","dropshipping"],"type":"string","description":"Types of fulfillment to complete a customer order."},"ServiceOfferReference":{"required":["currency","id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int32"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"currency":{"minLength":1,"type":"string","description":"Currency in ISO 4217"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in months) for rental offers.","format":"int32"},"name":{"type":"string","description":"Name of the offer","nullable":true},"externalId":{"type":"string","description":"Value to identify the offer in other systems. E.g. when another system is the source of this offer.","nullable":true},"isDefault":{"type":"boolean","description":"Indicates if this offer is a default offer for the service."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"FulfillmentServiceOption":{"required":["offer","option","version"],"type":"object","properties":{"offer":{"$ref":"#/components/schemas/SalesVersionOfferReference"},"option":{"$ref":"#/components/schemas/ProductOptionReference"},"version":{"$ref":"#/components/schemas/ProductOptionVersionReference"}},"additionalProperties":false},"SalesVersionOfferReference":{"required":["id","purchasePrice","recurringPrice","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the option","format":"int32"},"name":{"type":"string","description":"Display name of the option","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ProductOptionVersionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the version","format":"int32"},"name":{"type":"string","description":"Display name of the version","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SalesOrderReference":{"required":["created","id","orderNumber","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the order is also the order number.","format":"int64"},"customerOrderNumber":{"maxLength":100,"minLength":0,"type":"string","description":"Order reference number from the customer","nullable":true},"orderNumber":{"minLength":1,"type":"string","description":"Unique reference number of the sales order."},"created":{"type":"string","description":"The date and time when the order was placed. (ISO 8601 format)","format":"date-time"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeFulfillmentReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"phoneBusiness":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"Address":{"required":["id","self"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address.","nullable":true},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country.","nullable":true},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true},"id":{"type":"integer","description":"The id to identify the address in the system.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"Postal address for the shipment of goods or invoices."},"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"TargetServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"metadata":{"type":"array","items":{"$ref":"#/components/schemas/MetadataEntry"},"description":"Service instance metadata. Metadata can be used to store dynamic key value paired information on an instance.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"MetadataEntry":{"required":["key","value"],"type":"object","properties":{"key":{"maxLength":150,"minLength":0,"type":"string","description":"Key of the metadata entry."},"value":{"maxLength":500,"minLength":0,"type":"string","description":"The value of the metadata entry."},"scope":{"$ref":"#/components/schemas/ServiceInstanceMetadataScope"}},"additionalProperties":false},"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"},"FulfillmentAssignment":{"type":"object","properties":{"location":{"$ref":"#/components/schemas/LocationReference"},"employee":{"$ref":"#/components/schemas/EmployeeFulfillmentReference"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"BomItem":{"required":["quantity"],"type":"object","properties":{"quantity":{"maximum":2147483647,"minimum":1,"type":"integer","description":"Quantity of the product in the bill of materials","format":"int32","default":1},"product":{"$ref":"#/components/schemas/ProductReference"}},"additionalProperties":false},"ProductReference":{"required":["id","name","partNumber","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the product.","format":"int64"},"name":{"minLength":1,"type":"string","description":"The name of the product."},"partNumber":{"minLength":1,"type":"string","description":"The manufacturer part number of the product."},"externalId":{"type":"string","description":"The id of the product in an external application like an ERP. Can be used for synchronization correlation.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The FulfillmentOrderList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentOrderList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/FulfillmentOrder"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"FulfillmentOrder":{"required":["customer","id","offer","order","orderedBy","self","service","status","transactionType"],"type":"object","properties":{"transactionType":{"$ref":"#/components/schemas/FulfillmentOrderTransactionType"},"status":{"$ref":"#/components/schemas/FulfillmentStatus"},"fulfillmentType":{"$ref":"#/components/schemas/FulfillmentType"},"isPreorder":{"type":"boolean","description":"Indicates whether this order is a preorder. Preorders should only be prepared until ready for delivery and then wait to be requested by the customer before shipment."},"partnerNote":{"type":"string","description":"A note shared with the intermediary partner. (Only for orders placed by partner customers)","nullable":true},"offer":{"$ref":"#/components/schemas/ServiceOfferReference"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"options":{"type":"array","items":{"$ref":"#/components/schemas/FulfillmentServiceOption"},"description":"Reference to the ordered product option versions.","nullable":true},"order":{"$ref":"#/components/schemas/SalesOrderReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"orderedBy":{"$ref":"#/components/schemas/EmployeeFulfillmentReference"},"deliveryAddress":{"$ref":"#/components/schemas/Address"},"billingAddress":{"$ref":"#/components/schemas/Address"},"preferredProvisionDate":{"type":"string","description":"The preferred provision date.","format":"date-time","nullable":true},"serviceInstance":{"$ref":"#/components/schemas/ServiceInstanceReference"},"targetServiceInstance":{"$ref":"#/components/schemas/TargetServiceInstanceReference"},"assignments":{"$ref":"#/components/schemas/FulfillmentAssignment"},"bomItems":{"type":"array","items":{"$ref":"#/components/schemas/BomItem"},"description":"Items in the bom which are required to fulfill the order.","nullable":true},"totalRecurringPrice":{"type":"number","description":"Sum of the recurring prices of the service offer and the ordered options in this item.","format":"double"},"totalPurchasePrice":{"type":"number","description":"Sum of the purchase prices of the service offer and the ordered options in this item.","format":"double"},"id":{"type":"integer","description":"The identifier of the order.","format":"int64"},"externalId":{"type":"string","description":"The identifier of the order in an external app.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"FulfillmentOrderTransactionType":{"enum":["order","return","change","swap","cancellation"],"type":"string","description":"The action triggered by a fulfillment order."},"FulfillmentStatus":{"enum":["new","inprocess","ready-for-delivery","delivery-requested-outbound","in-delivery-outbound","delivered-outbound","delivery-returned-outbound","processed","cancelled"],"type":"string","description":"Status of the fulfillment process."},"FulfillmentType":{"enum":["in-house","dropshipping"],"type":"string","description":"Types of fulfillment to complete a customer order."},"ServiceOfferReference":{"required":["currency","id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int32"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"currency":{"minLength":1,"type":"string","description":"Currency in ISO 4217"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in months) for rental offers.","format":"int32"},"name":{"type":"string","description":"Name of the offer","nullable":true},"externalId":{"type":"string","description":"Value to identify the offer in other systems. E.g. when another system is the source of this offer.","nullable":true},"isDefault":{"type":"boolean","description":"Indicates if this offer is a default offer for the service."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"FulfillmentServiceOption":{"required":["offer","option","version"],"type":"object","properties":{"offer":{"$ref":"#/components/schemas/SalesVersionOfferReference"},"option":{"$ref":"#/components/schemas/ProductOptionReference"},"version":{"$ref":"#/components/schemas/ProductOptionVersionReference"}},"additionalProperties":false},"SalesVersionOfferReference":{"required":["id","purchasePrice","recurringPrice","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the option","format":"int32"},"name":{"type":"string","description":"Display name of the option","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ProductOptionVersionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the version","format":"int32"},"name":{"type":"string","description":"Display name of the version","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SalesOrderReference":{"required":["created","id","orderNumber","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the order is also the order number.","format":"int64"},"customerOrderNumber":{"maxLength":100,"minLength":0,"type":"string","description":"Order reference number from the customer","nullable":true},"orderNumber":{"minLength":1,"type":"string","description":"Unique reference number of the sales order."},"created":{"type":"string","description":"The date and time when the order was placed. (ISO 8601 format)","format":"date-time"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeFulfillmentReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"phoneBusiness":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees workplace.","nullable":true},"phoneMobile":{"maxLength":50,"minLength":0,"type":"string","description":"The phone number of the employees business mobile phone.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"Address":{"required":["id","self"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address.","nullable":true},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country.","nullable":true},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true},"id":{"type":"integer","description":"The id to identify the address in the system.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"Postal address for the shipment of goods or invoices."},"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"TargetServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"metadata":{"type":"array","items":{"$ref":"#/components/schemas/MetadataEntry"},"description":"Service instance metadata. Metadata can be used to store dynamic key value paired information on an instance.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"MetadataEntry":{"required":["key","value"],"type":"object","properties":{"key":{"maxLength":150,"minLength":0,"type":"string","description":"Key of the metadata entry."},"value":{"maxLength":500,"minLength":0,"type":"string","description":"The value of the metadata entry."},"scope":{"$ref":"#/components/schemas/ServiceInstanceMetadataScope"}},"additionalProperties":false},"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"},"FulfillmentAssignment":{"type":"object","properties":{"location":{"$ref":"#/components/schemas/LocationReference"},"employee":{"$ref":"#/components/schemas/EmployeeFulfillmentReference"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"BomItem":{"required":["quantity"],"type":"object","properties":{"quantity":{"maximum":2147483647,"minimum":1,"type":"integer","description":"Quantity of the product in the bill of materials","format":"int32","default":1},"product":{"$ref":"#/components/schemas/ProductReference"}},"additionalProperties":false},"ProductReference":{"required":["id","name","partNumber","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the product.","format":"int64"},"name":{"minLength":1,"type":"string","description":"The name of the product."},"partNumber":{"minLength":1,"type":"string","description":"The manufacturer part number of the product."},"externalId":{"type":"string","description":"The id of the product in an external application like an ERP. Can be used for synchronization correlation.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The FulfillmentOrderTransactionType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentOrderTransactionType":{"enum":["order","return","change","swap","cancellation"],"type":"string","description":"The action triggered by a fulfillment order."}}}}
```

## The FulfillmentOrderUpdate object

````json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentOrderUpdate":{"type":"object","properties":{"externalId":{"maxLength":100,"minLength":0,"type":"string","description":"The identifier of the order in an external app. Note: ```null``` value will be ignored on update. Set to empty string to clear a current value.","nullable":true}},"additionalProperties":false}}}}
````

## The FulfillmentServiceOption object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentServiceOption":{"required":["offer","option","version"],"type":"object","properties":{"offer":{"$ref":"#/components/schemas/SalesVersionOfferReference"},"option":{"$ref":"#/components/schemas/ProductOptionReference"},"version":{"$ref":"#/components/schemas/ProductOptionVersionReference"}},"additionalProperties":false},"SalesVersionOfferReference":{"required":["id","purchasePrice","recurringPrice","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"ProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the option","format":"int32"},"name":{"type":"string","description":"Display name of the option","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ProductOptionVersionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the version","format":"int32"},"name":{"type":"string","description":"Display name of the version","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The FulfillmentStatus object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentStatus":{"enum":["new","inprocess","ready-for-delivery","delivery-requested-outbound","in-delivery-outbound","delivered-outbound","delivery-returned-outbound","processed","cancelled"],"type":"string","description":"Status of the fulfillment process."}}}}
```

## The FulfillmentTransition object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentTransition":{"required":["action"],"type":"object","properties":{"action":{"$ref":"#/components/schemas/FulfillmentAction"},"activationDate":{"type":"string","description":"The (UTC) date on which the service should be activated (time component is ignored). Only applicable for the `complete` action.\nIf not provided, the service is activated immediately upon completion.","format":"date-time","nullable":true}},"additionalProperties":false},"FulfillmentAction":{"enum":["process","dispatchDelivery","rejectDelivery","confirmDelivery","processReturnedItem","complete","completeReturnDecommission","cancel"],"type":"string","description":"The action to take on the fulfillment order."}}}}
```

## The FulfillmentType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"FulfillmentType":{"enum":["in-house","dropshipping"],"type":"string","description":"Types of fulfillment to complete a customer order."}}}}
```

## The Group object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Group":{"required":["id","name","self"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/GroupType"},"category":{"type":"string","description":"A customizable category of the group. Can be used to categorize groups independent from the group type.","nullable":true},"companyName":{"maxLength":100,"minLength":0,"type":"string","description":"A customizable company name of the group. Can be used to distinguish same departments between different sub companies of the tenant.","nullable":true},"description":{"type":"string","description":"The description of the group.","nullable":true},"email":{"type":"string","description":"The email address of the group.","nullable":true},"manager":{"type":"array","items":{"$ref":"#/components/schemas/EmployeeReference"},"description":"A list of employee references assigned as managers for a group.","nullable":true},"tags":{"type":"array","items":{"type":"string"},"description":"Assigned tags","nullable":true},"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"GroupType":{"enum":["custom","company","department","project","team"],"type":"string","description":"Type of the group."},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The GroupCreate object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupCreate":{"required":["name","type"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/GroupType"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the group."},"category":{"maxLength":50,"minLength":0,"type":"string","description":"A customizable category of the group. Can be used to categorize groups independent from the group type.","nullable":true},"companyName":{"maxLength":100,"minLength":0,"type":"string","description":"A customizable company name of the group. Can be used to distinguish same departments between different sub companies of the tenant.","nullable":true},"description":{"maxLength":500,"minLength":0,"type":"string","description":"The description of the group.","nullable":true},"email":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The email of the group.","nullable":true}},"additionalProperties":false},"GroupType":{"enum":["custom","company","department","project","team"],"type":"string","description":"Type of the group."}}}}
```

## The GroupList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Group"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Group":{"required":["id","name","self"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/GroupType"},"category":{"type":"string","description":"A customizable category of the group. Can be used to categorize groups independent from the group type.","nullable":true},"companyName":{"maxLength":100,"minLength":0,"type":"string","description":"A customizable company name of the group. Can be used to distinguish same departments between different sub companies of the tenant.","nullable":true},"description":{"type":"string","description":"The description of the group.","nullable":true},"email":{"type":"string","description":"The email address of the group.","nullable":true},"manager":{"type":"array","items":{"$ref":"#/components/schemas/EmployeeReference"},"description":"A list of employee references assigned as managers for a group.","nullable":true},"tags":{"type":"array","items":{"type":"string"},"description":"Assigned tags","nullable":true},"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"GroupType":{"enum":["custom","company","department","project","team"],"type":"string","description":"Type of the group."},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The GroupMemberReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupMemberReference":{"type":"object","properties":{"id":{"type":"integer","description":"The id of the group member.","format":"int32"}},"additionalProperties":false}}}}
```

## The GroupReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The GroupServiceInstanceReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupServiceInstanceReference":{"required":["id"],"type":"object","properties":{"id":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The id of the service instance.","format":"int32"}},"additionalProperties":false}}}}
```

## The GroupSortParameter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupSortParameter":{"enum":["name"],"type":"string","description":"Parameters according to which groups can be sorted."}}}}
```

## The GroupType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupType":{"enum":["custom","company","department","project","team"],"type":"string","description":"Type of the group."}}}}
```

## The GroupUpdate object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"GroupUpdate":{"required":["name"],"type":"object","properties":{"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the group."},"category":{"maxLength":50,"minLength":0,"type":"string","description":"A customizable category of the group. Can be used to categorize groups independent from the group type.","nullable":true},"companyName":{"maxLength":100,"minLength":0,"type":"string","description":"A customizable company name of the group. Can be used to distinguish same departments between different sub companies of the tenant.","nullable":true},"description":{"maxLength":500,"minLength":0,"type":"string","description":"The description of the group.","nullable":true},"email":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The email of the group.","nullable":true}},"additionalProperties":false}}}}
```

## The InvitationModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"InvitationModel":{"type":"object","properties":{"loginMethod":{"$ref":"#/components/schemas/LoginMethod"},"message":{"maxLength":1000,"minLength":0,"type":"string","description":"Additional message which will displayed in the invitation mail below the regular information. Can be used to give the employee further information.","nullable":true}},"additionalProperties":false,"description":"Configures the invitation to be sent to the employee."},"LoginMethod":{"enum":["password","sso"],"type":"string"}}}}
```

## The Invoice object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Invoice":{"required":["created","id","self"],"type":"object","properties":{"supplier":{"$ref":"#/components/schemas/SupplierReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"primarySupplier":{"$ref":"#/components/schemas/SupplierReference"},"created":{"type":"string","description":"The timestamp of the creation of the invoice.","format":"date-time"},"dueDate":{"type":"string","description":"The due date of the invoice.","format":"date-time","nullable":true},"invoiceDate":{"type":"string","description":"The date on which the invoice was issued.","format":"date-time"},"invoiceId":{"type":"string","description":"The invoice id given by the supplier.","nullable":true},"vatId":{"type":"string","description":"The Vat ID of the recipient.","nullable":true},"transactionId":{"type":"string","description":"The transaction id of the payment.","nullable":true},"chargedTo":{"type":"string","description":"The cost center for the invoice.","nullable":true},"total":{"type":"number","description":"The total cost of the invoice.","format":"double"},"totalRecurring":{"type":"number","description":"The total recurring cost of the invoice.","format":"double"},"totalOneTime":{"type":"number","description":"The total one time cost of the invoice.","format":"double"},"currencyCode":{"type":"string","description":"TMP currency code of the invoice. This will always be the default currency of the customer.","nullable":true},"items":{"$ref":"#/components/schemas/ResourceListReference"},"id":{"type":"integer","description":"The id of the invoice.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SupplierReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the supplier.","format":"int64"},"name":{"type":"string","description":"The name of the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceListReference":{"required":["self","total"],"type":"object","properties":{"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The InvoiceList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"InvoiceList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Invoice"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Invoice":{"required":["created","id","self"],"type":"object","properties":{"supplier":{"$ref":"#/components/schemas/SupplierReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"primarySupplier":{"$ref":"#/components/schemas/SupplierReference"},"created":{"type":"string","description":"The timestamp of the creation of the invoice.","format":"date-time"},"dueDate":{"type":"string","description":"The due date of the invoice.","format":"date-time","nullable":true},"invoiceDate":{"type":"string","description":"The date on which the invoice was issued.","format":"date-time"},"invoiceId":{"type":"string","description":"The invoice id given by the supplier.","nullable":true},"vatId":{"type":"string","description":"The Vat ID of the recipient.","nullable":true},"transactionId":{"type":"string","description":"The transaction id of the payment.","nullable":true},"chargedTo":{"type":"string","description":"The cost center for the invoice.","nullable":true},"total":{"type":"number","description":"The total cost of the invoice.","format":"double"},"totalRecurring":{"type":"number","description":"The total recurring cost of the invoice.","format":"double"},"totalOneTime":{"type":"number","description":"The total one time cost of the invoice.","format":"double"},"currencyCode":{"type":"string","description":"TMP currency code of the invoice. This will always be the default currency of the customer.","nullable":true},"items":{"$ref":"#/components/schemas/ResourceListReference"},"id":{"type":"integer","description":"The id of the invoice.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SupplierReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the supplier.","format":"int64"},"name":{"type":"string","description":"The name of the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceListReference":{"required":["self","total"],"type":"object","properties":{"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The InvoiceReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"InvoiceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id of the invoice.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The Item object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Item":{"required":["costs","cycle","id","resource","self","startDate","status","type"],"type":"object","properties":{"supplier":{"$ref":"#/components/schemas/SupplierReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"location":{"$ref":"#/components/schemas/LocationReference"},"employee":{"$ref":"#/components/schemas/EmployeeReference"},"group":{"$ref":"#/components/schemas/GroupReference"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"resource":{"$ref":"#/components/schemas/ServiceInstanceReference"},"invoice":{"$ref":"#/components/schemas/InvoiceReference"},"type":{"$ref":"#/components/schemas/ItemType"},"cycle":{"$ref":"#/components/schemas/BillingCycle"},"status":{"$ref":"#/components/schemas/ItemStatus"},"description":{"type":"string","description":"The technical charge description.","nullable":true},"startDate":{"type":"string","description":"The start date for the charge.","format":"date-time"},"endDate":{"type":"string","description":"The end date for the charge.","format":"date-time"},"costs":{"type":"number","description":"Costs that are billed for the resource.","format":"double"},"currencyCode":{"type":"string","description":"Gets or sets the ISO 4217 currency code associated with the transaction.","nullable":true},"id":{"type":"integer","description":"The id of the billing item.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SupplierReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the supplier.","format":"int64"},"name":{"type":"string","description":"The name of the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"GroupReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"InvoiceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id of the invoice.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ItemType":{"enum":["fee","tax","refund","discount","credit"],"type":"string"},"BillingCycle":{"enum":["none","daily","weekly","biweekly","monthly","annually","triennial"],"type":"string"},"ItemStatus":{"enum":["draft","pending","unbilled","invoiced","paid","overdue","canceled","refunded"],"type":"string"}}}}
```

## The ItemList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ItemList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Item"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Item":{"required":["costs","cycle","id","resource","self","startDate","status","type"],"type":"object","properties":{"supplier":{"$ref":"#/components/schemas/SupplierReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"location":{"$ref":"#/components/schemas/LocationReference"},"employee":{"$ref":"#/components/schemas/EmployeeReference"},"group":{"$ref":"#/components/schemas/GroupReference"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"resource":{"$ref":"#/components/schemas/ServiceInstanceReference"},"invoice":{"$ref":"#/components/schemas/InvoiceReference"},"type":{"$ref":"#/components/schemas/ItemType"},"cycle":{"$ref":"#/components/schemas/BillingCycle"},"status":{"$ref":"#/components/schemas/ItemStatus"},"description":{"type":"string","description":"The technical charge description.","nullable":true},"startDate":{"type":"string","description":"The start date for the charge.","format":"date-time"},"endDate":{"type":"string","description":"The end date for the charge.","format":"date-time"},"costs":{"type":"number","description":"Costs that are billed for the resource.","format":"double"},"currencyCode":{"type":"string","description":"Gets or sets the ISO 4217 currency code associated with the transaction.","nullable":true},"id":{"type":"integer","description":"The id of the billing item.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SupplierReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the supplier.","format":"int64"},"name":{"type":"string","description":"The name of the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"GroupReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"InvoiceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id of the invoice.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ItemType":{"enum":["fee","tax","refund","discount","credit"],"type":"string"},"BillingCycle":{"enum":["none","daily","weekly","biweekly","monthly","annually","triennial"],"type":"string"},"ItemStatus":{"enum":["draft","pending","unbilled","invoiced","paid","overdue","canceled","refunded"],"type":"string"}}}}
```

## The ItemStatus object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ItemStatus":{"enum":["draft","pending","unbilled","invoiced","paid","overdue","canceled","refunded"],"type":"string"}}}}
```

## The ItemType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ItemType":{"enum":["fee","tax","refund","discount","credit"],"type":"string"}}}}
```

## The JsonPatchDocument\_ApprovalRequestPatch object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"JsonPatchDocument_ApprovalRequestPatch":{"type":"object","properties":{"operations":{"type":"array","items":{"$ref":"#/components/schemas/Operation_ApprovalRequestPatch"},"nullable":true}},"additionalProperties":false},"Operation_ApprovalRequestPatch":{"type":"object","properties":{"value":{"nullable":true},"path":{"type":"string","nullable":true},"op":{"type":"string","nullable":true},"from":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The JsonPatchDocument\_ProcurementRequestPatch object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"JsonPatchDocument_ProcurementRequestPatch":{"type":"object","properties":{"operations":{"type":"array","items":{"$ref":"#/components/schemas/Operation_ProcurementRequestPatch"},"nullable":true}},"additionalProperties":false},"Operation_ProcurementRequestPatch":{"type":"object","properties":{"value":{"nullable":true},"path":{"type":"string","nullable":true},"op":{"type":"string","nullable":true},"from":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The Location object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Location":{"required":["id","name","self","type"],"type":"object","properties":{"created":{"type":"string","description":"The date and time the data record was created.","format":"date-time"},"address":{"$ref":"#/components/schemas/Address"},"managers":{"type":"array","items":{"$ref":"#/components/schemas/LocationManger"},"description":"Current location managers.","nullable":true},"metadataItems":{"type":"array","items":{"$ref":"#/components/schemas/MetadataItem"},"description":"Additional Metadata attributes for the location.","nullable":true},"costCenter":{"$ref":"#/components/schemas/CostCenter"},"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"Address":{"required":["id","self"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address.","nullable":true},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country.","nullable":true},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true},"id":{"type":"integer","description":"The id to identify the address in the system.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"Postal address for the shipment of goods or invoices."},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"LocationManger":{"required":["id","self","username"],"type":"object","properties":{"managerPolicy":{"type":"string","nullable":true},"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"MetadataItem":{"required":["key","self"],"type":"object","properties":{"value":{"maxLength":500,"minLength":0,"type":"string","description":"Metadata value","nullable":true},"scope":{"type":"string","description":"Metadata scope. Can be Customer or Supplier to indicate the metadata is specific to a customer or supplier.","nullable":true},"key":{"maxLength":150,"minLength":0,"type":"string","description":"Metadata key used as a unique identifier for the metadata item."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CostCenter":{"required":["self"],"type":"object","properties":{"description":{"type":"string","nullable":true},"id":{"type":"integer","format":"int32"},"code":{"type":"string","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."}}}}
```

## The LocationCreateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationCreateModel":{"required":["address","name"],"type":"object","properties":{"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the location."},"address":{"$ref":"#/components/schemas/AddressCreateModel"},"managers":{"type":"array","items":{"$ref":"#/components/schemas/LocationManagerCreateModel"},"description":"The location managers.","nullable":true},"costCenterId":{"type":"integer","description":"Location cost center","format":"int32","nullable":true}},"additionalProperties":false},"AddressCreateModel":{"required":["city","countryCode"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address."},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country."},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true}},"additionalProperties":false},"LocationManagerCreateModel":{"required":["employeeId","role"],"type":"object","properties":{"employeeId":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The identifier of the user who is the manager of the location.","format":"int32"},"role":{"minLength":1,"type":"string","description":"The role of the manager at the location. Can be either 'location-manager' or 'location-executive'."}},"additionalProperties":false}}}}
```

## The LocationList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Location"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Location":{"required":["id","name","self","type"],"type":"object","properties":{"created":{"type":"string","description":"The date and time the data record was created.","format":"date-time"},"address":{"$ref":"#/components/schemas/Address"},"managers":{"type":"array","items":{"$ref":"#/components/schemas/LocationManger"},"description":"Current location managers.","nullable":true},"metadataItems":{"type":"array","items":{"$ref":"#/components/schemas/MetadataItem"},"description":"Additional Metadata attributes for the location.","nullable":true},"costCenter":{"$ref":"#/components/schemas/CostCenter"},"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"Address":{"required":["id","self"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address.","nullable":true},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country.","nullable":true},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true},"id":{"type":"integer","description":"The id to identify the address in the system.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"Postal address for the shipment of goods or invoices."},"LocationManger":{"required":["id","self","username"],"type":"object","properties":{"managerPolicy":{"type":"string","nullable":true},"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"MetadataItem":{"required":["key","self"],"type":"object","properties":{"value":{"maxLength":500,"minLength":0,"type":"string","description":"Metadata value","nullable":true},"scope":{"type":"string","description":"Metadata scope. Can be Customer or Supplier to indicate the metadata is specific to a customer or supplier.","nullable":true},"key":{"maxLength":150,"minLength":0,"type":"string","description":"Metadata key used as a unique identifier for the metadata item."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CostCenter":{"required":["self"],"type":"object","properties":{"description":{"type":"string","nullable":true},"id":{"type":"integer","format":"int32"},"code":{"type":"string","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."}}}}
```

## The LocationManagerCreateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationManagerCreateModel":{"required":["employeeId","role"],"type":"object","properties":{"employeeId":{"maximum":2147483647,"minimum":1,"type":"integer","description":"The identifier of the user who is the manager of the location.","format":"int32"},"role":{"minLength":1,"type":"string","description":"The role of the manager at the location. Can be either 'location-manager' or 'location-executive'."}},"additionalProperties":false}}}}
```

## The LocationManagerPatchModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationManagerPatchModel":{"required":["employeeId","role"],"type":"object","properties":{"employeeId":{"type":"integer","description":"The identifier of the user who is the manager of the location.","format":"int32"},"role":{"minLength":1,"type":"string","description":"The role of the manager at the location. Can be either 'location-manager' or 'location-executive'."}},"additionalProperties":false}}}}
```

## The LocationManger object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationManger":{"required":["id","self","username"],"type":"object","properties":{"managerPolicy":{"type":"string","nullable":true},"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The LocationPatch object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationPatch":{"required":["name"],"type":"object","properties":{"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the location."},"address":{"$ref":"#/components/schemas/AddressPatchModel"},"managers":{"type":"array","items":{"$ref":"#/components/schemas/LocationManagerPatchModel"},"description":"The location managers.","nullable":true},"addressId":{"type":"integer","format":"int32","nullable":true},"costCenterId":{"type":"integer","description":"Location Cost Center","format":"int32","nullable":true}},"additionalProperties":false},"AddressPatchModel":{"required":["city","countryCode"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address."},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country."},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true}},"additionalProperties":false},"LocationManagerPatchModel":{"required":["employeeId","role"],"type":"object","properties":{"employeeId":{"type":"integer","description":"The identifier of the user who is the manager of the location.","format":"int32"},"role":{"minLength":1,"type":"string","description":"The role of the manager at the location. Can be either 'location-manager' or 'location-executive'."}},"additionalProperties":false}}}}
```

## The LocationReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The LocationSearchParameters object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationSearchParameters":{"type":"object","properties":{"metadataScope":{"$ref":"#/components/schemas/MetadataScope"},"metaDataFilter":{"type":"array","items":{"$ref":"#/components/schemas/MetadataItem"},"description":"Search for locations based by metadata key and value.","nullable":true}},"additionalProperties":false},"MetadataScope":{"enum":["Supplier","Customer","Shared"],"type":"string"},"MetadataItem":{"required":["key","self"],"type":"object","properties":{"value":{"maxLength":500,"minLength":0,"type":"string","description":"Metadata value","nullable":true},"scope":{"type":"string","description":"Metadata scope. Can be Customer or Supplier to indicate the metadata is specific to a customer or supplier.","nullable":true},"key":{"maxLength":150,"minLength":0,"type":"string","description":"Metadata key used as a unique identifier for the metadata item."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The LocationSortParameter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationSortParameter":{"enum":["name"],"type":"string","description":"Parameters according to which a location can be sorted."}}}}
```

## The LocationType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."}}}}
```

## The LoginMethod object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"LoginMethod":{"enum":["password","sso"],"type":"string"}}}}
```

## The MetadataEntry object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"MetadataEntry":{"required":["key","value"],"type":"object","properties":{"key":{"maxLength":150,"minLength":0,"type":"string","description":"Key of the metadata entry."},"value":{"maxLength":500,"minLength":0,"type":"string","description":"The value of the metadata entry."},"scope":{"$ref":"#/components/schemas/ServiceInstanceMetadataScope"}},"additionalProperties":false},"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"}}}}
```

## The MetadataItem object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"MetadataItem":{"required":["key","self"],"type":"object","properties":{"value":{"maxLength":500,"minLength":0,"type":"string","description":"Metadata value","nullable":true},"scope":{"type":"string","description":"Metadata scope. Can be Customer or Supplier to indicate the metadata is specific to a customer or supplier.","nullable":true},"key":{"maxLength":150,"minLength":0,"type":"string","description":"Metadata key used as a unique identifier for the metadata item."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The MetadataItemCreateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"MetadataItemCreateModel":{"type":"object","properties":{"key":{"maxLength":150,"type":"string","description":"Key for the new metadata entry","nullable":true},"value":{"maxLength":500,"type":"string","description":"Metadata value","nullable":true}},"additionalProperties":false,"description":"DTO for creating a new metadata entry for a given resource which implements the logic"}}}}
```

## The MetadataList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"MetadataList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/MetadataItem"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"MetadataItem":{"required":["key","self"],"type":"object","properties":{"value":{"maxLength":500,"minLength":0,"type":"string","description":"Metadata value","nullable":true},"scope":{"type":"string","description":"Metadata scope. Can be Customer or Supplier to indicate the metadata is specific to a customer or supplier.","nullable":true},"key":{"maxLength":150,"minLength":0,"type":"string","description":"Metadata key used as a unique identifier for the metadata item."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The MetadataScope object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"MetadataScope":{"enum":["Supplier","Customer","Shared"],"type":"string"}}}}
```

## The MetadataValue object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"MetadataValue":{"required":["value"],"type":"object","properties":{"value":{"maxLength":500,"minLength":0,"type":"string","description":"The value of the metadata entry."},"scope":{"$ref":"#/components/schemas/ServiceInstanceMetadataScope"}},"additionalProperties":false},"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"}}}}
```

## The NoContentResult object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"NoContentResult":{"type":"object","properties":{"statusCode":{"type":"integer","format":"int32"}},"additionalProperties":false}}}}
```

## The OfferType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"}}}}
```

## The Operation object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Operation":{"type":"object","properties":{"value":{"nullable":true},"path":{"type":"string","nullable":true},"op":{"type":"string","nullable":true},"from":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The Operation\_ApprovalRequestPatch object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Operation_ApprovalRequestPatch":{"type":"object","properties":{"value":{"nullable":true},"path":{"type":"string","nullable":true},"op":{"type":"string","nullable":true},"from":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The Operation\_ProcurementRequestPatch object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Operation_ProcurementRequestPatch":{"type":"object","properties":{"value":{"nullable":true},"path":{"type":"string","nullable":true},"op":{"type":"string","nullable":true},"from":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The Parcel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Parcel":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the parcel.","format":"int32"},"createdBy":{"$ref":"#/components/schemas/UserReference"},"created":{"type":"string","description":"Date on which the parcel entry was created. (ISO 8601 format)","format":"date-time"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"deliveryAddress":{"$ref":"#/components/schemas/Address"},"deliveryNoteNumber":{"type":"string","description":"Identification number of the delivery note in the parcel","nullable":true},"originAddress":{"$ref":"#/components/schemas/Address"},"recipientName":{"type":"string","description":"For example, the name of the person to whom the shipment was entrusted. Corresponds to Address Line 1 in package shipping at the carrier.","nullable":true},"referenceNumber":{"type":"string","description":"Carriers often allow adding a reference number to a parcel, helping the recipient to identify what the parcel is related to.\nThis could be an order number or any other reference number agreed upon with the recipient.","nullable":true},"carrier":{"type":"string","description":"Transport carrier of the parcel. Allowed values: DHL, DPD, GLS, UPS, Hermes, Fedex, trans-o-flex, Other, Partner","nullable":true},"status":{"$ref":"#/components/schemas/ParcelStatus"},"expectedDeliveryDate":{"type":"string","description":"UTC date on which the parcel is expected to arrive at the recipient. (ISO 8601 format)","format":"date-time","nullable":true},"deliveryDate":{"type":"string","description":"UTC date on which the parcel has arrived at the recipient. Should only be set when the delivery is completed. (ISO 8601 format)","format":"date-time","nullable":true},"note":{"maxLength":500,"minLength":0,"type":"string","description":"Note field to add further information regarding the parcel.","nullable":true},"trackingNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Tracking number of the parcel provided by the carrier.","nullable":true},"trackingLink":{"maxLength":2000,"minLength":0,"type":"string","description":"Tracking link of the parcel provided by the carrier to allow the customer to get details regarding their delivery.","nullable":true},"externalId":{"maxLength":50,"minLength":0,"type":"string","description":"Id of the parcel in an external system. Can be used to refer to the parcel in your own shipping system.","nullable":true},"items":{"type":"array","items":{"$ref":"#/components/schemas/ParcelItem"},"description":"Items that are included in the parcel.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"UserReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"type":"string","description":"The last/family name of the employee.","nullable":true},"email":{"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"type":"string","description":"The username to log in to the app. The value has to be an e-mail address.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"Address":{"required":["id","self"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address.","nullable":true},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country.","nullable":true},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true},"id":{"type":"integer","description":"The id to identify the address in the system.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"Postal address for the shipment of goods or invoices."},"ParcelStatus":{"enum":["unknown","new","ready","in-transit","delayed","delivered","picked-up","failed","refused-by-recipient","returned-to-sender","cancelled"],"type":"string","description":"Status of a parcel."},"ParcelItem":{"type":"object","properties":{"serviceInstance":{"$ref":"#/components/schemas/ResourceReference_Int32"},"fulfillmentOrder":{"$ref":"#/components/schemas/ResourceReference_Int64"}},"additionalProperties":false},"ResourceReference_Int32":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceReference_Int64":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The ParcelCreateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ParcelCreateModel":{"required":["customerId","fulfillmentOrderIds","status"],"type":"object","properties":{"fulfillmentOrderIds":{"minItems":1,"type":"array","items":{"type":"integer","format":"int64"},"description":"Fulfillment items for which the parcel is created. Specify all fulfillment items whose service instances are sent with this package.\nAll fulfillment orders must belong to the same customer."},"customerId":{"maximum":2147483647,"minimum":1,"type":"integer","description":"Id of the customer who receives the parcel.","format":"int32"},"deliveryAddressId":{"type":"integer","description":"Address where the parcel is delivered to. The address needs to belong to the recipient company/customer.","format":"int32","nullable":true},"originAddressId":{"type":"integer","description":"Address from which the parcel is sent. The address needs to belong to the sender company (your customer entity).","format":"int32","nullable":true},"recipientName":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the recipient in addition to the delivery address.\nCorresponds to Address Line 1 in shipping information of the carrier.\nFor example, the name of the person to whom the shipment was entrusted.","nullable":true},"referenceNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Carriers often allow adding a reference number to a parcel, helping the recipient to identify what the parcel is related to.\nThis could be an order number or any other reference number agreed upon with the recipient.","nullable":true},"carrier":{"type":"string","description":"Transport carrier of the parcel. Allowed values: DHL, DPD, GLS, UPS, Hermes, Fedex, trans-o-flex, Other, Partner","nullable":true},"status":{"$ref":"#/components/schemas/ParcelStatus"},"expectedDeliveryDate":{"type":"string","description":"UTC date on which the parcel is expected to arrive at the recipient. (ISO 8601 format)","format":"date-time","nullable":true},"deliveryDate":{"type":"string","description":"UTC date on which the parcel has arrived at the recipient. Should only be set when the delivery is completed. (ISO 8601 format)","format":"date-time","nullable":true},"deliveryNoteNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Identification number of the delivery note in the parcel.","nullable":true},"note":{"maxLength":500,"minLength":0,"type":"string","description":"Note field to add further information regarding the parcel.","nullable":true},"trackingNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Tracking number of the parcel provided by the carrier.","nullable":true},"trackingLink":{"maxLength":2000,"minLength":0,"type":"string","description":"Tracking link of the parcel provided by the carrier to allow the customer to get details regarding their delivery.","nullable":true},"externalId":{"maxLength":50,"minLength":0,"type":"string","description":"Id of the parcel in an external system. Can be used to refer to the parcel in your own shipping system.","nullable":true}},"additionalProperties":false},"ParcelStatus":{"enum":["unknown","new","ready","in-transit","delayed","delivered","picked-up","failed","refused-by-recipient","returned-to-sender","cancelled"],"type":"string","description":"Status of a parcel."}}}}
```

## The ParcelItem object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ParcelItem":{"type":"object","properties":{"serviceInstance":{"$ref":"#/components/schemas/ResourceReference_Int32"},"fulfillmentOrder":{"$ref":"#/components/schemas/ResourceReference_Int64"}},"additionalProperties":false},"ResourceReference_Int32":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"ResourceReference_Int64":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The ParcelList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ParcelList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Parcel"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Parcel":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the parcel.","format":"int32"},"createdBy":{"$ref":"#/components/schemas/UserReference"},"created":{"type":"string","description":"Date on which the parcel entry was created. (ISO 8601 format)","format":"date-time"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"deliveryAddress":{"$ref":"#/components/schemas/Address"},"deliveryNoteNumber":{"type":"string","description":"Identification number of the delivery note in the parcel","nullable":true},"originAddress":{"$ref":"#/components/schemas/Address"},"recipientName":{"type":"string","description":"For example, the name of the person to whom the shipment was entrusted. Corresponds to Address Line 1 in package shipping at the carrier.","nullable":true},"referenceNumber":{"type":"string","description":"Carriers often allow adding a reference number to a parcel, helping the recipient to identify what the parcel is related to.\nThis could be an order number or any other reference number agreed upon with the recipient.","nullable":true},"carrier":{"type":"string","description":"Transport carrier of the parcel. Allowed values: DHL, DPD, GLS, UPS, Hermes, Fedex, trans-o-flex, Other, Partner","nullable":true},"status":{"$ref":"#/components/schemas/ParcelStatus"},"expectedDeliveryDate":{"type":"string","description":"UTC date on which the parcel is expected to arrive at the recipient. (ISO 8601 format)","format":"date-time","nullable":true},"deliveryDate":{"type":"string","description":"UTC date on which the parcel has arrived at the recipient. Should only be set when the delivery is completed. (ISO 8601 format)","format":"date-time","nullable":true},"note":{"maxLength":500,"minLength":0,"type":"string","description":"Note field to add further information regarding the parcel.","nullable":true},"trackingNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Tracking number of the parcel provided by the carrier.","nullable":true},"trackingLink":{"maxLength":2000,"minLength":0,"type":"string","description":"Tracking link of the parcel provided by the carrier to allow the customer to get details regarding their delivery.","nullable":true},"externalId":{"maxLength":50,"minLength":0,"type":"string","description":"Id of the parcel in an external system. Can be used to refer to the parcel in your own shipping system.","nullable":true},"items":{"type":"array","items":{"$ref":"#/components/schemas/ParcelItem"},"description":"Items that are included in the parcel.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"UserReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"type":"string","description":"The last/family name of the employee.","nullable":true},"email":{"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"type":"string","description":"The username to log in to the app. The value has to be an e-mail address.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"Address":{"required":["id","self"],"type":"object","properties":{"line1":{"maxLength":100,"minLength":0,"type":"string","description":"First line of the address. e.g. company name or P.O. box.","nullable":true},"street":{"maxLength":100,"minLength":0,"type":"string","description":"The street name of the address.","nullable":true},"number":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric house number in the street.","nullable":true},"addition":{"maxLength":1500,"minLength":0,"type":"string","description":"Addition to the address (line 3) to provide further information for delivery.","nullable":true},"city":{"maxLength":100,"minLength":0,"type":"string","description":"The city name of the address.","nullable":true},"postalCode":{"maxLength":30,"minLength":0,"type":"string","description":"The alphanumeric postal code or zip of the address.","nullable":true},"countryCode":{"maxLength":2,"minLength":0,"type":"string","description":"ISO-3166-1 code of the country.","nullable":true},"regionCode":{"maxLength":10,"minLength":0,"type":"string","description":"ISO-3166-2 code of the region / administrative area. Required e.g. in USA, Canada, Australia or Italy.","nullable":true},"regionName":{"maxLength":100,"minLength":0,"type":"string","description":"Name of the region / administrative area (if no ISO code is given/existing).","nullable":true},"dependentLocality":{"maxLength":200,"minLength":0,"type":"string","description":"A dependent locality is an address element that distinguishes a premise when an address thoroughfare appears more than once in the same post town. PAF holds details of approximately 30,000 localities within the UK.","nullable":true},"phoneNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Phone number of the address. Used primarily for delivery purposes.","nullable":true},"id":{"type":"integer","description":"The id to identify the address in the system.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"Postal address for the shipment of goods or invoices."},"ParcelStatus":{"enum":["unknown","new","ready","in-transit","delayed","delivered","picked-up","failed","refused-by-recipient","returned-to-sender","cancelled"],"type":"string","description":"Status of a parcel."},"ParcelItem":{"type":"object","properties":{"serviceInstance":{"$ref":"#/components/schemas/ResourceReference_Int32"},"fulfillmentOrder":{"$ref":"#/components/schemas/ResourceReference_Int64"}},"additionalProperties":false},"ResourceReference_Int32":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceReference_Int64":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The ParcelSortParameter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ParcelSortParameter":{"enum":["created","status"],"type":"string","description":"Parameters according to which a customer can be sorted."}}}}
```

## The ParcelStatus object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ParcelStatus":{"enum":["unknown","new","ready","in-transit","delayed","delivered","picked-up","failed","refused-by-recipient","returned-to-sender","cancelled"],"type":"string","description":"Status of a parcel."}}}}
```

## The ParcelUpdateModel object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ParcelUpdateModel":{"required":["status"],"type":"object","properties":{"carrier":{"type":"string","description":"Transport carrier of the parcel. Allowed values: DHL, DPD, GLS, UPS, Hermes, Fedex, trans-o-flex, Other, Partner","nullable":true},"status":{"$ref":"#/components/schemas/ParcelStatus"},"expectedDeliveryDate":{"type":"string","description":"UTC date on which the parcel is expected to arrive at the recipient. (ISO 8601 format)","format":"date-time","nullable":true},"deliveryDate":{"type":"string","description":"UTC date on which the parcel has arrived at the recipient. Should only be set when the delivery is completed. (ISO 8601 format)","format":"date-time","nullable":true},"deliveryNoteNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Identification number of the delivery note in the parcel.","nullable":true},"note":{"maxLength":500,"minLength":0,"type":"string","description":"Note field to add further information regarding the parcel.","nullable":true},"trackingNumber":{"maxLength":50,"minLength":0,"type":"string","description":"Tracking number of the parcel provided by the carrier.","nullable":true},"trackingLink":{"maxLength":2000,"minLength":0,"type":"string","description":"Tracking link of the parcel provided by the carrier to allow the customer to get details regarding their delivery.","nullable":true},"externalId":{"maxLength":50,"minLength":0,"type":"string","description":"Id of the parcel in an external system. Can be used to refer to the parcel in your own shipping system.","nullable":true}},"additionalProperties":false},"ParcelStatus":{"enum":["unknown","new","ready","in-transit","delayed","delivered","picked-up","failed","refused-by-recipient","returned-to-sender","cancelled"],"type":"string","description":"Status of a parcel."}}}}
```

## The PatchList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"PatchList":{"type":"object","properties":{"add":{"type":"array","items":{"type":"integer","format":"int32"},"nullable":true},"remove":{"type":"array","items":{"type":"integer","format":"int32"},"nullable":true}},"additionalProperties":false}}}}
```

## The Product object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Product":{"required":["id","name","self"],"type":"object","properties":{"description":{"type":"string","description":"A short description of the product.","nullable":true},"configurationType":{"$ref":"#/components/schemas/ServiceConfigurationType"},"previewImage":{"type":"string","description":"A link to the preview image of the product.","nullable":true},"attributes":{"type":"array","items":{"$ref":"#/components/schemas/ProductAttribute"},"description":"The attributes of the product.","nullable":true},"offers":{"type":"array","items":{"$ref":"#/components/schemas/ProductOffer"},"description":"The product offers.","nullable":true},"id":{"type":"integer","description":"The identifier of the product.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the product."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceConfigurationType":{"enum":["simple","dynamic"],"type":"string","description":"Defines the configuration complexity of a service. Can not be changed after service creation."},"ProductAttribute":{"type":"object","properties":{"definition":{"$ref":"#/components/schemas/AttributeDefinitionReference"},"value":{"$ref":"#/components/schemas/AttributeValueReference"},"rank":{"type":"integer","description":"The display rank order of the attribute","format":"int32","nullable":true}},"additionalProperties":false},"AttributeDefinitionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute definition.","format":"int32"},"name":{"type":"string","description":"The name of the attribute.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"AttributeValueReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute value.","format":"int32"},"displayValue":{"type":"string","description":"The value for the attribute to be displayed.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ProductOffer":{"required":["self"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/OfferType"},"currency":{"$ref":"#/components/schemas/Currency"},"purchasePrice":{"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"id":{"type":"integer","description":"The identifier of the offer.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"Currency":{"enum":["EUR"],"type":"string","description":"Supported currencies in ISO 4217 format"}}}}
```

## The ProductAttribute object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ProductAttribute":{"type":"object","properties":{"definition":{"$ref":"#/components/schemas/AttributeDefinitionReference"},"value":{"$ref":"#/components/schemas/AttributeValueReference"},"rank":{"type":"integer","description":"The display rank order of the attribute","format":"int32","nullable":true}},"additionalProperties":false},"AttributeDefinitionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute definition.","format":"int32"},"name":{"type":"string","description":"The name of the attribute.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"AttributeValueReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute value.","format":"int32"},"displayValue":{"type":"string","description":"The value for the attribute to be displayed.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The ProductList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ProductList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Product"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Product":{"required":["id","name","self"],"type":"object","properties":{"description":{"type":"string","description":"A short description of the product.","nullable":true},"configurationType":{"$ref":"#/components/schemas/ServiceConfigurationType"},"previewImage":{"type":"string","description":"A link to the preview image of the product.","nullable":true},"attributes":{"type":"array","items":{"$ref":"#/components/schemas/ProductAttribute"},"description":"The attributes of the product.","nullable":true},"offers":{"type":"array","items":{"$ref":"#/components/schemas/ProductOffer"},"description":"The product offers.","nullable":true},"id":{"type":"integer","description":"The identifier of the product.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the product."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceConfigurationType":{"enum":["simple","dynamic"],"type":"string","description":"Defines the configuration complexity of a service. Can not be changed after service creation."},"ProductAttribute":{"type":"object","properties":{"definition":{"$ref":"#/components/schemas/AttributeDefinitionReference"},"value":{"$ref":"#/components/schemas/AttributeValueReference"},"rank":{"type":"integer","description":"The display rank order of the attribute","format":"int32","nullable":true}},"additionalProperties":false},"AttributeDefinitionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute definition.","format":"int32"},"name":{"type":"string","description":"The name of the attribute.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"AttributeValueReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the attribute value.","format":"int32"},"displayValue":{"type":"string","description":"The value for the attribute to be displayed.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ProductOffer":{"required":["self"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/OfferType"},"currency":{"$ref":"#/components/schemas/Currency"},"purchasePrice":{"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"id":{"type":"integer","description":"The identifier of the offer.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"Currency":{"enum":["EUR"],"type":"string","description":"Supported currencies in ISO 4217 format"}}}}
```

## The ProductOffer object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ProductOffer":{"required":["self"],"type":"object","properties":{"type":{"$ref":"#/components/schemas/OfferType"},"currency":{"$ref":"#/components/schemas/Currency"},"purchasePrice":{"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"id":{"type":"integer","description":"The identifier of the offer.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"Currency":{"enum":["EUR"],"type":"string","description":"Supported currencies in ISO 4217 format"},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ProductOptionReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the option","format":"int32"},"name":{"type":"string","description":"Display name of the option","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ProductOptionVersionReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ProductOptionVersionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"Identifier of the version","format":"int32"},"name":{"type":"string","description":"Display name of the version","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ProductReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ProductReference":{"required":["id","name","partNumber","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the product.","format":"int64"},"name":{"minLength":1,"type":"string","description":"The name of the product."},"partNumber":{"minLength":1,"type":"string","description":"The manufacturer part number of the product."},"externalId":{"type":"string","description":"The id of the product in an external application like an ERP. Can be used for synchronization correlation.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ProductSortParameter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ProductSortParameter":{"enum":["name"],"type":"string"}}}}
```

## The PurchaseOrderRequestItem object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"PurchaseOrderRequestItem":{"type":"object","properties":{"requestReferenceId":{"type":"integer","description":"Gets or sets the unique identifier for the referenced request associated with the order item.","format":"int32"},"note":{"type":"string","description":"Gets or sets additional information or comments associated with the order item.","nullable":true}},"additionalProperties":false,"description":"Represents a model used to create a new order item with details like request reference ID and additional notes."}}}}
```

## The Request object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"Request":{"required":["created","id","self"],"type":"object","properties":{"created":{"type":"string","description":"UTC date of request creation.","format":"date-time"},"requestedBy":{"$ref":"#/components/schemas/EmployeeReference"},"assignedLocation":{"$ref":"#/components/schemas/LocationReference"},"assignedGroup":{"$ref":"#/components/schemas/GroupReference"},"assignedEmployee":{"$ref":"#/components/schemas/EmployeeReference"},"totalOneTimeCosts":{"type":"number","description":"Total one-time costs of all items in the request.","format":"double"},"totalRecurringCosts":{"type":"number","description":"Total recurring costs of all items in the request.","format":"double"},"subscriptionPeriod":{"type":"integer","description":"The minimum subscription period (in months) for the requested instance.","format":"int32","nullable":true},"subscriptionPeriodRenewal":{"type":"integer","description":"Number of months a subscription is renewed after its expiration time if it has not been terminated.","format":"int32","nullable":true},"items":{"type":"array","items":{"$ref":"#/components/schemas/RequestItem"},"description":"The requested items. See RequestItem model for details what kind of items can be requested.","nullable":true},"approved":{"type":"boolean","description":"Indicates if the request is approved or rejected"},"justification":{"type":"string","description":"Reason given by the user who created the procurement request","nullable":true},"deliveryAddress":{"type":"string","description":"The current delivery address for the requested items as an address string","nullable":true},"costCenterCode":{"type":"string","description":"Cost Center assigned to the procurement request","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the associated cost center.","format":"int32","nullable":true},"id":{"type":"integer","description":"The identifier of the request.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"GroupReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"RequestItem":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/RequestItemType"},"action":{"$ref":"#/components/schemas/RequestItemAction"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"options":{"type":"array","items":{"$ref":"#/components/schemas/ServiceProductOptionReference"},"description":"Reference to the service-options","nullable":true},"offer":{"$ref":"#/components/schemas/SalesOfferReference"},"targetInstance":{"$ref":"#/components/schemas/ServiceInstanceReference"},"note":{"type":"string","description":"A note on the request. Supports html formatted text including inline css styles.","nullable":true},"preferredProvisionDate":{"type":"string","description":"The preferred provision date (UTC).","format":"date-time","nullable":true}},"additionalProperties":false},"RequestItemType":{"enum":["service","option","software","addon"],"type":"string","description":"Type of a procurement request item"},"RequestItemAction":{"enum":["delivery","order","change","cancellation","other"],"type":"string"},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"ServiceProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option","format":"int32"},"name":{"type":"string","description":"The name of the product option","nullable":true},"versionId":{"type":"integer","description":"The record id of the production option version","format":"int32"},"versionName":{"type":"string","description":"The name of the version associated with the service product option.","nullable":true},"action":{"$ref":"#/components/schemas/RequestItemAction"},"offer":{"$ref":"#/components/schemas/SalesOfferReference"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/ServiceProductOptionVersionReference"},"description":"All available (non-removed) versions for this option, including their pricing.\nOnly populated when includeAllOptionVersions=true is passed to the endpoint.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SalesOfferReference":{"required":["id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ServiceProductOptionVersionReference":{"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option version.","format":"int32"},"versionName":{"type":"string","description":"The name of the version.","nullable":true},"purchasePrice":{"type":"number","description":"One-time purchase price for this version.","format":"double"},"recurringPrice":{"type":"number","description":"Recurring price for this version.","format":"double"}},"additionalProperties":false},"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The RequestItem object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"RequestItem":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/RequestItemType"},"action":{"$ref":"#/components/schemas/RequestItemAction"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"options":{"type":"array","items":{"$ref":"#/components/schemas/ServiceProductOptionReference"},"description":"Reference to the service-options","nullable":true},"offer":{"$ref":"#/components/schemas/SalesOfferReference"},"targetInstance":{"$ref":"#/components/schemas/ServiceInstanceReference"},"note":{"type":"string","description":"A note on the request. Supports html formatted text including inline css styles.","nullable":true},"preferredProvisionDate":{"type":"string","description":"The preferred provision date (UTC).","format":"date-time","nullable":true}},"additionalProperties":false},"RequestItemType":{"enum":["service","option","software","addon"],"type":"string","description":"Type of a procurement request item"},"RequestItemAction":{"enum":["delivery","order","change","cancellation","other"],"type":"string"},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"ServiceProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option","format":"int32"},"name":{"type":"string","description":"The name of the product option","nullable":true},"versionId":{"type":"integer","description":"The record id of the production option version","format":"int32"},"versionName":{"type":"string","description":"The name of the version associated with the service product option.","nullable":true},"action":{"$ref":"#/components/schemas/RequestItemAction"},"offer":{"$ref":"#/components/schemas/SalesOfferReference"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/ServiceProductOptionVersionReference"},"description":"All available (non-removed) versions for this option, including their pricing.\nOnly populated when includeAllOptionVersions=true is passed to the endpoint.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SalesOfferReference":{"required":["id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ServiceProductOptionVersionReference":{"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option version.","format":"int32"},"versionName":{"type":"string","description":"The name of the version.","nullable":true},"purchasePrice":{"type":"number","description":"One-time purchase price for this version.","format":"double"},"recurringPrice":{"type":"number","description":"Recurring price for this version.","format":"double"}},"additionalProperties":false},"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The RequestItemAction object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"RequestItemAction":{"enum":["delivery","order","change","cancellation","other"],"type":"string"}}}}
```

## The RequestItemType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"RequestItemType":{"enum":["service","option","software","addon"],"type":"string","description":"Type of a procurement request item"}}}}
```

## The RequestList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"RequestList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/Request"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"Request":{"required":["created","id","self"],"type":"object","properties":{"created":{"type":"string","description":"UTC date of request creation.","format":"date-time"},"requestedBy":{"$ref":"#/components/schemas/EmployeeReference"},"assignedLocation":{"$ref":"#/components/schemas/LocationReference"},"assignedGroup":{"$ref":"#/components/schemas/GroupReference"},"assignedEmployee":{"$ref":"#/components/schemas/EmployeeReference"},"totalOneTimeCosts":{"type":"number","description":"Total one-time costs of all items in the request.","format":"double"},"totalRecurringCosts":{"type":"number","description":"Total recurring costs of all items in the request.","format":"double"},"subscriptionPeriod":{"type":"integer","description":"The minimum subscription period (in months) for the requested instance.","format":"int32","nullable":true},"subscriptionPeriodRenewal":{"type":"integer","description":"Number of months a subscription is renewed after its expiration time if it has not been terminated.","format":"int32","nullable":true},"items":{"type":"array","items":{"$ref":"#/components/schemas/RequestItem"},"description":"The requested items. See RequestItem model for details what kind of items can be requested.","nullable":true},"approved":{"type":"boolean","description":"Indicates if the request is approved or rejected"},"justification":{"type":"string","description":"Reason given by the user who created the procurement request","nullable":true},"deliveryAddress":{"type":"string","description":"The current delivery address for the requested items as an address string","nullable":true},"costCenterCode":{"type":"string","description":"Cost Center assigned to the procurement request","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the associated cost center.","format":"int32","nullable":true},"id":{"type":"integer","description":"The identifier of the request.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"GroupReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"RequestItem":{"type":"object","properties":{"type":{"$ref":"#/components/schemas/RequestItemType"},"action":{"$ref":"#/components/schemas/RequestItemAction"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"options":{"type":"array","items":{"$ref":"#/components/schemas/ServiceProductOptionReference"},"description":"Reference to the service-options","nullable":true},"offer":{"$ref":"#/components/schemas/SalesOfferReference"},"targetInstance":{"$ref":"#/components/schemas/ServiceInstanceReference"},"note":{"type":"string","description":"A note on the request. Supports html formatted text including inline css styles.","nullable":true},"preferredProvisionDate":{"type":"string","description":"The preferred provision date (UTC).","format":"date-time","nullable":true}},"additionalProperties":false},"RequestItemType":{"enum":["service","option","software","addon"],"type":"string","description":"Type of a procurement request item"},"RequestItemAction":{"enum":["delivery","order","change","cancellation","other"],"type":"string"},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"ServiceProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option","format":"int32"},"name":{"type":"string","description":"The name of the product option","nullable":true},"versionId":{"type":"integer","description":"The record id of the production option version","format":"int32"},"versionName":{"type":"string","description":"The name of the version associated with the service product option.","nullable":true},"action":{"$ref":"#/components/schemas/RequestItemAction"},"offer":{"$ref":"#/components/schemas/SalesOfferReference"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/ServiceProductOptionVersionReference"},"description":"All available (non-removed) versions for this option, including their pricing.\nOnly populated when includeAllOptionVersions=true is passed to the endpoint.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SalesOfferReference":{"required":["id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ServiceProductOptionVersionReference":{"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option version.","format":"int32"},"versionName":{"type":"string","description":"The name of the version.","nullable":true},"purchasePrice":{"type":"number","description":"One-time purchase price for this version.","format":"double"},"recurringPrice":{"type":"number","description":"Recurring price for this version.","format":"double"}},"additionalProperties":false},"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false}}}}
```

## The ResourceLink object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ResourceListReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ResourceListReference":{"required":["self","total"],"type":"object","properties":{"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ResourceReference\_Int32 object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ResourceReference_Int32":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ResourceReference\_Int64 object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ResourceReference_Int64":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The referenced resource.","format":"int64"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The SalesOfferReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"SalesOfferReference":{"required":["id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The SalesOrderReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"SalesOrderReference":{"required":["created","id","orderNumber","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the order is also the order number.","format":"int64"},"customerOrderNumber":{"maxLength":100,"minLength":0,"type":"string","description":"Order reference number from the customer","nullable":true},"orderNumber":{"minLength":1,"type":"string","description":"Unique reference number of the sales order."},"created":{"type":"string","description":"The date and time when the order was placed. (ISO 8601 format)","format":"date-time"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The SalesVersionOfferReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"SalesVersionOfferReference":{"required":["id","purchasePrice","recurringPrice","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ServiceConfigurationType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceConfigurationType":{"enum":["simple","dynamic"],"type":"string","description":"Defines the configuration complexity of a service. Can not be changed after service creation."}}}}
```

## The ServiceInstance object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceInstance":{"required":["id","self"],"type":"object","properties":{"supplier":{"$ref":"#/components/schemas/SupplierReference"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"location":{"$ref":"#/components/schemas/LocationReference"},"group":{"$ref":"#/components/schemas/GroupReference"},"employee":{"$ref":"#/components/schemas/EmployeeReference"},"activationDate":{"type":"string","description":"The date the service instance was activated.","format":"date-time","nullable":true},"lastModifiedDate":{"type":"string","description":"The date the service instance was last modified.","format":"date-time","nullable":true},"expirationDate":{"type":"string","description":"The date when the service instance should expire.","format":"date-time","nullable":true},"processStatus":{"type":"string","description":"The processing status of the service instance.","nullable":true},"active":{"type":"boolean","description":"True if the service instance is active, otherwise false."},"oneTimeCosts":{"type":"number","description":"One-time purchase costs of the instance in its life cycle to date.","format":"double"},"recurringCosts":{"type":"number","description":"The current recurring costs for the service instance. Only calculated for active instances.","format":"double"},"currencyCode":{"type":"string","description":"Currency in ISO 4217","nullable":true},"subscriptionPeriod":{"type":"integer","description":"The minimum subscription period (in months) for the services instance.","format":"int32","nullable":true},"subscriptionPeriodRenewal":{"type":"integer","description":"Number of months a subscription is renewed after its expiration time if it has not been terminated.","format":"int32","nullable":true},"note":{"type":"string","description":"A note on the service instance. Supports html formatted text including inline css styles.","nullable":true},"metadata":{"type":"array","items":{"$ref":"#/components/schemas/MetadataEntry"},"description":"Service instance metadata. Metadata can be used to store dynamic key value paired information on an instance.","nullable":true},"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SupplierReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the supplier.","format":"int64"},"name":{"type":"string","description":"The name of the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"GroupReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"MetadataEntry":{"required":["key","value"],"type":"object","properties":{"key":{"maxLength":150,"minLength":0,"type":"string","description":"Key of the metadata entry."},"value":{"maxLength":500,"minLength":0,"type":"string","description":"The value of the metadata entry."},"scope":{"$ref":"#/components/schemas/ServiceInstanceMetadataScope"}},"additionalProperties":false},"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"}}}}
```

## The ServiceInstanceList object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceInstanceList":{"required":["items","self","total"],"type":"object","properties":{"previous":{"$ref":"#/components/schemas/ResourceLink"},"next":{"$ref":"#/components/schemas/ResourceLink"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ServiceInstance"},"description":"The list of result items."},"total":{"type":"integer","description":"The total number of items.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"ServiceInstance":{"required":["id","self"],"type":"object","properties":{"supplier":{"$ref":"#/components/schemas/SupplierReference"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"customer":{"$ref":"#/components/schemas/CustomerReference"},"location":{"$ref":"#/components/schemas/LocationReference"},"group":{"$ref":"#/components/schemas/GroupReference"},"employee":{"$ref":"#/components/schemas/EmployeeReference"},"activationDate":{"type":"string","description":"The date the service instance was activated.","format":"date-time","nullable":true},"lastModifiedDate":{"type":"string","description":"The date the service instance was last modified.","format":"date-time","nullable":true},"expirationDate":{"type":"string","description":"The date when the service instance should expire.","format":"date-time","nullable":true},"processStatus":{"type":"string","description":"The processing status of the service instance.","nullable":true},"active":{"type":"boolean","description":"True if the service instance is active, otherwise false."},"oneTimeCosts":{"type":"number","description":"One-time purchase costs of the instance in its life cycle to date.","format":"double"},"recurringCosts":{"type":"number","description":"The current recurring costs for the service instance. Only calculated for active instances.","format":"double"},"currencyCode":{"type":"string","description":"Currency in ISO 4217","nullable":true},"subscriptionPeriod":{"type":"integer","description":"The minimum subscription period (in months) for the services instance.","format":"int32","nullable":true},"subscriptionPeriodRenewal":{"type":"integer","description":"Number of months a subscription is renewed after its expiration time if it has not been terminated.","format":"int32","nullable":true},"note":{"type":"string","description":"A note on the service instance. Supports html formatted text including inline css styles.","nullable":true},"metadata":{"type":"array","items":{"$ref":"#/components/schemas/MetadataEntry"},"description":"Service instance metadata. Metadata can be used to store dynamic key value paired information on an instance.","nullable":true},"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"SupplierReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the supplier.","format":"int64"},"name":{"type":"string","description":"The name of the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"CustomerReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the customer.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the customer."},"customerNumber":{"type":"string","description":"Optional identifier of the customer defined by the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"LocationReference":{"required":["id","name","self","type"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the company location.","format":"int32"},"name":{"maxLength":100,"minLength":0,"type":"string","description":"The name of the company location."},"type":{"$ref":"#/components/schemas/LocationType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false,"description":"A location can either be a company location or a work from home location."},"LocationType":{"enum":["location","warehouse","remoteWork"],"type":"string","description":"The type of location."},"GroupReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the group in the system.","format":"int32"},"name":{"maxLength":50,"minLength":0,"type":"string","description":"The name of the group."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"EmployeeReference":{"required":["id","self","username"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"maxLength":100,"minLength":0,"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"maxLength":100,"minLength":0,"type":"string","description":"The last/family name of the employee.","nullable":true},"fullName":{"maxLength":150,"minLength":0,"type":"string","description":"Combination of last and firstname","nullable":true,"readOnly":true},"email":{"maxLength":100,"minLength":0,"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"maxLength":100,"minLength":0,"pattern":"^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*\\.[a-zA-Z]{2,}$","type":"string","description":"The username to log in to the app. The value has to be an e-mail address."},"costCenter":{"maxLength":100,"minLength":0,"type":"string","description":"The cost center of the employee.","nullable":true},"costCenterId":{"type":"integer","description":"The identifier of the cost center.","format":"int32","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"MetadataEntry":{"required":["key","value"],"type":"object","properties":{"key":{"maxLength":150,"minLength":0,"type":"string","description":"Key of the metadata entry."},"value":{"maxLength":500,"minLength":0,"type":"string","description":"The value of the metadata entry."},"scope":{"$ref":"#/components/schemas/ServiceInstanceMetadataScope"}},"additionalProperties":false},"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"}}}}
```

## The ServiceInstanceMetadataScope object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"}}}}
```

## The ServiceInstanceReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"inventoryNumber":{"maxLength":50,"minLength":0,"type":"string","description":"The inventory number of the service instance.","nullable":true},"costCenter":{"type":"string","description":"The name of the cost center to which the service instance belongs.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ServiceInstanceSortParameter object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceInstanceSortParameter":{"enum":["product","supplier","customer","oneTimeCosts","recurringCosts","activationDate","lastModified","expirationDate","inventoryNumber"],"type":"string"}}}}
```

## The ServiceOfferReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceOfferReference":{"required":["currency","id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int32"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"currency":{"minLength":1,"type":"string","description":"Currency in ISO 4217"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in months) for rental offers.","format":"int32"},"name":{"type":"string","description":"Name of the offer","nullable":true},"externalId":{"type":"string","description":"Value to identify the offer in other systems. E.g. when another system is the source of this offer.","nullable":true},"isDefault":{"type":"boolean","description":"Indicates if this offer is a default offer for the service."},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ServiceProductOptionReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceProductOptionReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option","format":"int32"},"name":{"type":"string","description":"The name of the product option","nullable":true},"versionId":{"type":"integer","description":"The record id of the production option version","format":"int32"},"versionName":{"type":"string","description":"The name of the version associated with the service product option.","nullable":true},"action":{"$ref":"#/components/schemas/RequestItemAction"},"offer":{"$ref":"#/components/schemas/SalesOfferReference"},"versions":{"type":"array","items":{"$ref":"#/components/schemas/ServiceProductOptionVersionReference"},"description":"All available (non-removed) versions for this option, including their pricing.\nOnly populated when includeAllOptionVersions=true is passed to the endpoint.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"RequestItemAction":{"enum":["delivery","order","change","cancellation","other"],"type":"string"},"SalesOfferReference":{"required":["id","purchasePrice","recurringPrice","self","subscriptionPeriod","type"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the offer in the system.","format":"int64"},"type":{"$ref":"#/components/schemas/OfferType"},"purchasePrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged only once after providing the item.","format":"double"},"recurringPrice":{"maximum":1.7976931348623157e+308,"minimum":0,"type":"number","description":"The price charged monthly after providing the item for the subscription period","format":"double"},"subscriptionPeriod":{"maximum":2147483647,"minimum":0,"type":"integer","description":"The minimum subscription period (in month) for rental offers.","format":"int32"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"OfferType":{"enum":["rental","lease","purchase","subscription","leasing"],"type":"string"},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"ServiceProductOptionVersionReference":{"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option version.","format":"int32"},"versionName":{"type":"string","description":"The name of the version.","nullable":true},"purchasePrice":{"type":"number","description":"One-time purchase price for this version.","format":"double"},"recurringPrice":{"type":"number","description":"Recurring price for this version.","format":"double"}},"additionalProperties":false}}}}
```

## The ServiceProductOptionVersionReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceProductOptionVersionReference":{"type":"object","properties":{"id":{"type":"integer","description":"The record id of the product option version.","format":"int32"},"versionName":{"type":"string","description":"The name of the version.","nullable":true},"purchasePrice":{"type":"number","description":"One-time purchase price for this version.","format":"double"},"recurringPrice":{"type":"number","description":"Recurring price for this version.","format":"double"}},"additionalProperties":false}}}}
```

## The ServiceProductReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The ServiceProductType object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."}}}}
```

## The SortOrder object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"SortOrder":{"enum":["asc","desc"],"type":"string","description":"Order in which the result of a list request is sorted."}}}}
```

## The SupplierReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"SupplierReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the supplier.","format":"int64"},"name":{"type":"string","description":"The name of the supplier.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The TargetServiceInstanceReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"TargetServiceInstanceReference":{"required":["id","self"],"type":"object","properties":{"id":{"type":"integer","description":"The id to identify the service instance in the system.","format":"int32"},"service":{"$ref":"#/components/schemas/ServiceProductReference"},"metadata":{"type":"array","items":{"$ref":"#/components/schemas/MetadataEntry"},"description":"Service instance metadata. Metadata can be used to store dynamic key value paired information on an instance.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductReference":{"required":["id","name","self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the service.","format":"int32"},"name":{"minLength":1,"type":"string","description":"The name of the service."},"category":{"type":"string","description":"The category of the service. Comes from the marketplace ProductDisplayGroup","nullable":true},"ean":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service. (Max. 50 characters)","nullable":true},"externalId":{"type":"string","description":"Value to identify the service in other systems. E.g. when an other system is the source of this service.","nullable":true},"supplierName":{"type":"string","description":"The supplier for this service product","nullable":true},"previewImageLink":{"type":"string","description":"Link to a small preview image for the product","nullable":true},"type":{"$ref":"#/components/schemas/ServiceProductType"},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ServiceProductType":{"enum":["service","addon","foundation_service"],"type":"string","description":"Services can take on different types that define their meaning and process flows within the system."},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false},"MetadataEntry":{"required":["key","value"],"type":"object","properties":{"key":{"maxLength":150,"minLength":0,"type":"string","description":"Key of the metadata entry."},"value":{"maxLength":500,"minLength":0,"type":"string","description":"The value of the metadata entry."},"scope":{"$ref":"#/components/schemas/ServiceInstanceMetadataScope"}},"additionalProperties":false},"ServiceInstanceMetadataScope":{"enum":["public","internal"],"type":"string","description":"Defines for whom a metadata entry is visible. public: visible to all who have access to the service instance | internal: visible only to the author tenant"}}}}
```

## The UpdateCostCenterRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"UpdateCostCenterRequest":{"type":"object","properties":{"code":{"type":"string","nullable":true},"description":{"type":"string","nullable":true},"billingAddressId":{"type":"integer","format":"int32","nullable":true}},"additionalProperties":false}}}}
```

## The UpdateRequestRequest object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"UpdateRequestRequest":{"type":"object","properties":{"patchDocument":{"$ref":"#/components/schemas/JsonPatchDocument_ProcurementRequestPatch"}},"additionalProperties":false},"JsonPatchDocument_ProcurementRequestPatch":{"type":"object","properties":{"operations":{"type":"array","items":{"$ref":"#/components/schemas/Operation_ProcurementRequestPatch"},"nullable":true}},"additionalProperties":false},"Operation_ProcurementRequestPatch":{"type":"object","properties":{"value":{"nullable":true},"path":{"type":"string","nullable":true},"op":{"type":"string","nullable":true},"from":{"type":"string","nullable":true}},"additionalProperties":false}}}}
```

## The UserReference object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"UserReference":{"required":["self"],"type":"object","properties":{"id":{"type":"integer","description":"The identifier of the employee.","format":"int32"},"firstName":{"type":"string","description":"The first/given name of the employee.","nullable":true},"lastName":{"type":"string","description":"The last/family name of the employee.","nullable":true},"email":{"type":"string","description":"The contact and login mail address.","nullable":true},"username":{"type":"string","description":"The username to log in to the app. The value has to be an e-mail address.","nullable":true},"self":{"$ref":"#/components/schemas/ResourceLink"}},"additionalProperties":false},"ResourceLink":{"required":["href"],"type":"object","properties":{"href":{"minLength":1,"type":"string","description":"The target resource URI."},"method":{"type":"string","description":"The HTTP method to use for the request.","nullable":true}},"additionalProperties":false}}}}
```

## The UserRole object

```json
{"openapi":"3.0.4","info":{"title":"Equipme Customer API","version":"v1"},"components":{"schemas":{"UserRole":{"enum":["administrator","planner","user"],"type":"string","description":"Roles available to be assigned to an employee as a user in Equipme. Options will be extended in the future."}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hub.equipme.io/development/api-reference-app/models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
