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

# Models

## The errorMessage object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"errorMessage":{"title":"Error","description":"Schema for API specified errors.","type":"object","properties":{"code":{"minimum":100,"maximum":599,"description":"Original HTTP error code, should be consistent with the response HTTP code.","type":"integer"},"status":{"description":"Original HTTP error name.","type":"string"},"message":{"description":"Descriptive error message for debugging.","type":"string"},"resourceId":{"type":"string","description":"Id of the resource."},"details":{"description":"List of problems causing this error.","type":"array","items":{"description":"Details for specific error cause.","type":"string"}}},"required":["status","code"]}}}}
```

## The metadataUpdate object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"metadataUpdate":{"type":"object","properties":{"version":{"minimum":1,"type":"integer","description":"Version of the document."},"mixins":{"type":"object","description":"Links to the mixin schemas. A map where the keys represent mixins set attributes and the values represent url to a schema for a particular set.","additionalProperties":true}}}}}}
```

## The metadata object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"metadata":{"type":"object","allOf":[{"$ref":"#/components/schemas/metadataUpdate"},{"type":"object","properties":{"createdAt":{"description":"Date and time when the document was created.","type":"string"},"modifiedAt":{"description":"Date and time when the document was last modified.","type":"string"}}}]},"metadataUpdate":{"type":"object","properties":{"version":{"minimum":1,"type":"integer","description":"Version of the document."},"mixins":{"type":"object","description":"Links to the mixin schemas. A map where the keys represent mixins set attributes and the values represent url to a schema for a particular set.","additionalProperties":true}}}}}}
```

## The resourceId object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"resourceId":{"title":"Resource","type":"object","properties":{"id":{"type":"string","description":"Id of a resource."}}}}}}
```

## The vendor object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"vendor":{"title":"Vendor","type":"object","properties":{"id":{"type":"string","description":"The vendor unique identifier."},"name":{"type":"string","description":"The name of the vendor."},"type":{"type":"string","enum":["COMPANY","SUBSIDIARY"],"description":"The type of the vendor."},"parentId":{"type":"string","description":"The id of the parent vendor."},"legalInfo":{"$ref":"#/components/schemas/legalInfo"},"contactDetails":{"type":"array","description":"The list of contact details for the vendor.","items":{"$ref":"#/components/schemas/vendorContactDetails"}},"locations":{"type":"array","description":"The list of locations assigned to the vendor.","items":{"$ref":"#/components/schemas/location"}},"metadata":{"$ref":"#/components/schemas/metadata"},"mixins":{"type":"object","description":"Mixins request. A map where a key represent mixins set name and a value represent a map with key-value pairs.","additionalProperties":true}}},"legalInfo":{"title":"Vendor Legal Information","type":"object","properties":{"legalName":{"type":"string","description":"The legal name of the vendor."},"registrationDate":{"type":"string","description":"The registration date of the vendor in the ISO 8601 format."},"countryOfRegistration":{"type":"string","description":"The country in which the vendor has been registered."},"taxRegistrationNumber":{"type":"string","description":"The tax registration number of the vendor."}}},"vendorContactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."}},"required":["email"]},"location":{"title":"Location","type":"object","properties":{"id":{"type":"string","description":"The location unique identifier."},"name":{"type":"string","description":"The name of the location."},"type":{"type":"string","enum":["HEADQUARTER","WAREHOUSE","OFFICE"],"description":"The type of the location."},"contactDetails":{"$ref":"#/components/schemas/contactDetails"},"metadata":{"$ref":"#/components/schemas/metadata"},"mixins":{"type":"object","description":"Mixins request. A map where a key represent mixins set name and a value represent a map with key-value pairs.","additionalProperties":true}}},"contactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."},"tags":{"type":"array","items":{"type":"string"},"description":"Allows to tag the location."}}},"metadata":{"type":"object","allOf":[{"$ref":"#/components/schemas/metadataUpdate"},{"type":"object","properties":{"createdAt":{"description":"Date and time when the document was created.","type":"string"},"modifiedAt":{"description":"Date and time when the document was last modified.","type":"string"}}}]},"metadataUpdate":{"type":"object","properties":{"version":{"minimum":1,"type":"integer","description":"Version of the document."},"mixins":{"type":"object","description":"Links to the mixin schemas. A map where the keys represent mixins set attributes and the values represent url to a schema for a particular set.","additionalProperties":true}}}}}}
```

## The legalInfo object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"legalInfo":{"title":"Vendor Legal Information","type":"object","properties":{"legalName":{"type":"string","description":"The legal name of the vendor."},"registrationDate":{"type":"string","description":"The registration date of the vendor in the ISO 8601 format."},"countryOfRegistration":{"type":"string","description":"The country in which the vendor has been registered."},"taxRegistrationNumber":{"type":"string","description":"The tax registration number of the vendor."}}}}}}
```

## The vendorContactDetails object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"vendorContactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."}},"required":["email"]}}}}
```

## The vendorCreate object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"vendorCreate":{"title":"Vendor create payload","type":"object","properties":{"id":{"type":"string","description":"Custom vendor identifier. If not provided, it is automatically generated.","minLength":1,"maxLength":66,"pattern":"^[a-zA-Z0-9_-]+$"},"name":{"type":"string","description":"The name of the vendor."},"type":{"type":"string","enum":["COMPANY","SUBSIDIARY"],"description":"The type of the vendor. If not provided, the default value is: `COMPANY`."},"parentId":{"type":"string","description":"The ID of the parent vendor."},"legalInfo":{"$ref":"#/components/schemas/legalInfo"},"contactDetails":{"type":"array","description":"The list of contact details for the vendor.","items":{"$ref":"#/components/schemas/vendorContactDetails"}},"locations":{"type":"array","description":"The list of location IDs assigned to the vendor.","items":{"$ref":"#/components/schemas/resourceId"}},"mixins":{"type":"object","description":"Mixins request. A map where a key represent mixins set name and a value represent a map with key-value pairs.","additionalProperties":true}},"required":["name"]},"legalInfo":{"title":"Vendor Legal Information","type":"object","properties":{"legalName":{"type":"string","description":"The legal name of the vendor."},"registrationDate":{"type":"string","description":"The registration date of the vendor in the ISO 8601 format."},"countryOfRegistration":{"type":"string","description":"The country in which the vendor has been registered."},"taxRegistrationNumber":{"type":"string","description":"The tax registration number of the vendor."}}},"vendorContactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."}},"required":["email"]},"resourceId":{"title":"Resource","type":"object","properties":{"id":{"type":"string","description":"Id of a resource."}}}}}}
```

## The vendorUpdate object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"vendorUpdate":{"title":"Vendor update payload","type":"object","properties":{"name":{"type":"string","description":"The name of the vendor."},"type":{"type":"string","enum":["COMPANY","SUBSIDIARY"],"description":"The type of the vendor."},"parentId":{"type":"string","description":"The ID of the parent vendor."},"legalInfo":{"$ref":"#/components/schemas/legalInfo"},"contactDetails":{"type":"array","description":"The list of contact details for the vendor.","items":{"$ref":"#/components/schemas/vendorContactDetails"}},"locations":{"type":"array","description":"The list of location IDs assigned to the vendor.","items":{"$ref":"#/components/schemas/resourceId"}},"metadata":{"$ref":"#/components/schemas/metadataUpdate"},"mixins":{"type":"object","description":"Mixins request. A map where a key represent mixins set name and a value represent a map with key-value pairs.","additionalProperties":true}},"required":["name","type"]},"legalInfo":{"title":"Vendor Legal Information","type":"object","properties":{"legalName":{"type":"string","description":"The legal name of the vendor."},"registrationDate":{"type":"string","description":"The registration date of the vendor in the ISO 8601 format."},"countryOfRegistration":{"type":"string","description":"The country in which the vendor has been registered."},"taxRegistrationNumber":{"type":"string","description":"The tax registration number of the vendor."}}},"vendorContactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."}},"required":["email"]},"resourceId":{"title":"Resource","type":"object","properties":{"id":{"type":"string","description":"Id of a resource."}}},"metadataUpdate":{"type":"object","properties":{"version":{"minimum":1,"type":"integer","description":"Version of the document."},"mixins":{"type":"object","description":"Links to the mixin schemas. A map where the keys represent mixins set attributes and the values represent url to a schema for a particular set.","additionalProperties":true}}}}}}
```

## The location object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"location":{"title":"Location","type":"object","properties":{"id":{"type":"string","description":"The location unique identifier."},"name":{"type":"string","description":"The name of the location."},"type":{"type":"string","enum":["HEADQUARTER","WAREHOUSE","OFFICE"],"description":"The type of the location."},"contactDetails":{"$ref":"#/components/schemas/contactDetails"},"metadata":{"$ref":"#/components/schemas/metadata"},"mixins":{"type":"object","description":"Mixins request. A map where a key represent mixins set name and a value represent a map with key-value pairs.","additionalProperties":true}}},"contactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."},"tags":{"type":"array","items":{"type":"string"},"description":"Allows to tag the location."}}},"metadata":{"type":"object","allOf":[{"$ref":"#/components/schemas/metadataUpdate"},{"type":"object","properties":{"createdAt":{"description":"Date and time when the document was created.","type":"string"},"modifiedAt":{"description":"Date and time when the document was last modified.","type":"string"}}}]},"metadataUpdate":{"type":"object","properties":{"version":{"minimum":1,"type":"integer","description":"Version of the document."},"mixins":{"type":"object","description":"Links to the mixin schemas. A map where the keys represent mixins set attributes and the values represent url to a schema for a particular set.","additionalProperties":true}}}}}}
```

## The locationCreate object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"locationCreate":{"title":"Location create payload","type":"object","properties":{"id":{"type":"string","description":"Custom location identifier. If not provided, it is automatically generated.","minLength":1,"maxLength":66,"pattern":"^[a-zA-Z0-9_-]+$"},"name":{"type":"string","description":"The name of the location"},"type":{"type":"string","enum":["HEADQUARTER","WAREHOUSE","OFFICE"],"description":"The type of the location."},"contactDetails":{"$ref":"#/components/schemas/contactDetails"},"mixins":{"type":"object","description":"Mixins request. A map where a key represent mixins set name and a value represent a map with key-value pairs.","additionalProperties":true}},"required":["type","contactDetails"]},"contactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."},"tags":{"type":"array","items":{"type":"string"},"description":"Allows to tag the location."}}}}}}
```

## The locationUpdate object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"locationUpdate":{"title":"Location update payload","type":"object","properties":{"name":{"type":"string","description":"The name of the location."},"type":{"type":"string","enum":["HEADQUARTER","WAREHOUSE","OFFICE"],"description":"The type of the location."},"contactDetails":{"$ref":"#/components/schemas/contactDetails"},"metadata":{"$ref":"#/components/schemas/metadataUpdate"},"mixins":{"type":"object","description":"Mixins request. A map where a key represent mixins set name and a value represent a map with key-value pairs.","additionalProperties":true}},"required":["type","contactDetails"]},"contactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."},"tags":{"type":"array","items":{"type":"string"},"description":"Allows to tag the location."}}},"metadataUpdate":{"type":"object","properties":{"version":{"minimum":1,"type":"integer","description":"Version of the document."},"mixins":{"type":"object","description":"Links to the mixin schemas. A map where the keys represent mixins set attributes and the values represent url to a schema for a particular set.","additionalProperties":true}}}}}}
```

## The contactDetails object

```json
{"openapi":"3.0.0","info":{"title":"Vendor Service","version":"0.0.1"},"components":{"schemas":{"contactDetails":{"title":"Contact Details","type":"object","properties":{"emails":{"type":"array","items":{"type":"string","format":"email"},"description":"The list of contact emails."},"phones":{"type":"array","items":{"type":"string"},"description":"The list of contact phone numbers."},"addressLine1":{"type":"string","description":"The first address line of the contact."},"city":{"type":"string","description":"The city of the contact."},"state":{"type":"string","description":"The state of the contact."},"postcode":{"type":"string","description":"The post code of the contact."},"countryCode":{"type":"string","description":"The country code of the contact."},"tags":{"type":"array","items":{"type":"string"},"description":"Allows to tag the location."}}}}}}
```


---

# 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://developer.emporix.io/api-references-1/readme/api-reference-40/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.
