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

# Models

## The CategoryVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"CategoryVm":{"required":["id","title"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"title":{"type":"string"},"description":{"type":["null","string"]}}}}}}
```

## The ChannelVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ChannelVm":{"required":["id","title"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"title":{"type":"string"},"description":{"type":["null","string"]}}}}}}
```

## The CountryVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"CountryVm":{"required":["id","title","countryCode","vat","isEU","isEEA","currencyId","languageId"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"title":{"type":"string"},"countryCode":{"type":"string"},"phonePrefix":{"type":["null","string"]},"vat":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"isEU":{"type":"boolean"},"isEEA":{"type":"boolean"},"currencyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"languageId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"}}}}}}
```

## The CreateFolderRequest object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"CreateFolderRequest":{"required":["title"],"type":"object","properties":{"title":{"type":"string"},"parentId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"}}}}}}
```

## The CreateOrderLineRequest object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"CreateOrderLineRequest":{"required":["productId","quantity"],"type":"object","properties":{"productId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"description":"Must belong to the authenticated tenant.","format":"int32"},"quantity":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"unitPrice":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["null","number","string"],"format":"double"},"comment":{"type":["null","string"]}}}}}}
```

## The CreateOrderRequest object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"CreateOrderRequest":{"required":["channelId","currencyId","lines"],"type":"object","properties":{"channelId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"currencyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"customerId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"description":"Must belong to the authenticated tenant if provided; omit for a guest order.","format":"int32"},"lines":{"type":"array","items":{"$ref":"#/components/schemas/CreateOrderLineRequest"}}}},"CreateOrderLineRequest":{"required":["productId","quantity"],"type":"object","properties":{"productId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"description":"Must belong to the authenticated tenant.","format":"int32"},"quantity":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"unitPrice":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["null","number","string"],"format":"double"},"comment":{"type":["null","string"]}}}}}}
```

## The CurrencyVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"CurrencyVm":{"required":["id","currencyCode"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"currencyCode":{"type":"string"},"description":{"type":["null","string"]}}}}}}
```

## The CustomerVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"CustomerVm":{"required":["id","name","active"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"no":{"type":["null","string"]},"name":{"type":"string"},"email":{"type":["null","string"]},"phone":{"type":["null","string"]},"active":{"type":"boolean"}}}}}}
```

## The ErrorResponse object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ErrorResponse":{"required":["error"],"type":"object","properties":{"error":{"type":"string"}},"description":"Error response shape used by 400 Bad Request responses."}}}}
```

## The FileVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"FileVm":{"required":["id","folderId","filename","mimeType","sizeBytes","downloadUrl"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"folderId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"filename":{"type":"string"},"mimeType":{"type":"string"},"sizeBytes":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int64"},"mediaWidth":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"mediaHeight":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"downloadUrl":{"type":"string","description":"Points at this same API's GET /v1/files/{id}/content endpoint."}}}}}}
```

## The FolderVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"FolderVm":{"required":["id","title"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"parentId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"title":{"type":"string"}}}}}}
```

## The GroupVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"GroupVm":{"required":["id","groupTypeId","title"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"groupTypeId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"groupTypeTitle":{"type":["null","string"]},"title":{"type":"string"},"description":{"type":["null","string"]}}}}}}
```

## The IdResult object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"IdResult":{"required":["id"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"}},"description":"Returned by create/upsert endpoints that don't return the full resource."}}}}
```

## The IFormFile object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"IFormFile":{"type":"string","format":"binary"}}}}
```

## The LanguageVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"LanguageVm":{"required":["id","languageCode","countryCode","cultureCode","title","active"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"languageCode":{"type":"string"},"countryCode":{"type":"string"},"cultureCode":{"type":"string"},"title":{"type":"string"},"active":{"type":"boolean"}}}}}}
```

## The OrderLineVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"OrderLineVm":{"required":["id","productId","quantity"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"productId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"quantity":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"unitPrice":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["null","number","string"],"format":"double"},"comment":{"type":["null","string"]}}}}}}
```

## The OrderVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"OrderVm":{"required":["id","status","type","channelId","currencyId","lines"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"publicKey":{"type":["null","string"]},"status":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"type":{"type":"string"},"orderDate":{"type":["null","string"],"format":"date-time"},"channelId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"currencyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"customerId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"lines":{"type":"array","items":{"$ref":"#/components/schemas/OrderLineVm"}}}},"OrderLineVm":{"required":["id","productId","quantity"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"productId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"quantity":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"unitPrice":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["null","number","string"],"format":"double"},"comment":{"type":["null","string"]}}}}}}
```

## The PagedResultOfCustomerVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"PagedResultOfCustomerVm":{"required":["total","page","pageSize","items"],"type":"object","properties":{"total":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"page":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"pageSize":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"items":{"type":"array","items":{"$ref":"#/components/schemas/CustomerVm"}}},"description":"Paged list response."},"CustomerVm":{"required":["id","name","active"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"no":{"type":["null","string"]},"name":{"type":"string"},"email":{"type":["null","string"]},"phone":{"type":["null","string"]},"active":{"type":"boolean"}}}}}}
```

## The PagedResultOfFileVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"PagedResultOfFileVm":{"required":["total","page","pageSize","items"],"type":"object","properties":{"total":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"page":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"pageSize":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"items":{"type":"array","items":{"$ref":"#/components/schemas/FileVm"}}},"description":"Paged list response."},"FileVm":{"required":["id","folderId","filename","mimeType","sizeBytes","downloadUrl"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"folderId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"filename":{"type":"string"},"mimeType":{"type":"string"},"sizeBytes":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int64"},"mediaWidth":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"mediaHeight":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"downloadUrl":{"type":"string","description":"Points at this same API's GET /v1/files/{id}/content endpoint."}}}}}}
```

## The PagedResultOfOrderVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"PagedResultOfOrderVm":{"required":["total","page","pageSize","items"],"type":"object","properties":{"total":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"page":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"pageSize":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"items":{"type":"array","items":{"$ref":"#/components/schemas/OrderVm"}}},"description":"Paged list response."},"OrderVm":{"required":["id","status","type","channelId","currencyId","lines"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"publicKey":{"type":["null","string"]},"status":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"type":{"type":"string"},"orderDate":{"type":["null","string"],"format":"date-time"},"channelId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"currencyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"customerId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"lines":{"type":"array","items":{"$ref":"#/components/schemas/OrderLineVm"}}}},"OrderLineVm":{"required":["id","productId","quantity"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"productId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"quantity":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"unitPrice":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["null","number","string"],"format":"double"},"comment":{"type":["null","string"]}}}}}}
```

## The PagedResultOfProductListItemVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"PagedResultOfProductListItemVm":{"required":["total","page","pageSize","items"],"type":"object","properties":{"total":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"page":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"pageSize":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ProductListItemVm"}}},"description":"Paged list response."},"ProductListItemVm":{"required":["id","familyId","active"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"familyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"active":{"type":"boolean"},"itemNumber":{"type":["null","string"]},"title":{"type":["null","string"]}}}}}}
```

## The ProblemDetails object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ProblemDetails":{"type":"object","properties":{"type":{"type":["null","string"]},"title":{"type":["null","string"]},"status":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"detail":{"type":["null","string"]},"instance":{"type":["null","string"]}}}}}}
```

## The ProductDetailVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ProductDetailVm":{"required":["id","familyId","active","numbers","prices","stock"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"familyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"active":{"type":"boolean"},"numbers":{"type":"array","items":{"$ref":"#/components/schemas/ProductNumberVm"}},"title":{"type":["null","string"]},"description":{"type":["null","string"]},"prices":{"type":"array","items":{"$ref":"#/components/schemas/ProductPriceVm"}},"stock":{"type":"array","items":{"$ref":"#/components/schemas/ProductStockVm"}}}},"ProductNumberVm":{"required":["type","no"],"type":"object","properties":{"type":{"type":"string"},"no":{"type":"string"}}},"ProductPriceVm":{"required":["id","type","price","inclVat","active"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"type":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"currencyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"channelId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"price":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"inclVat":{"type":"boolean"},"active":{"type":"boolean"},"dateStart":{"type":["null","string"],"format":"date-time"},"dateEnd":{"type":["null","string"],"format":"date-time"}}},"ProductStockVm":{"required":["id","stockId","amount"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"stockId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"amount":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"availableDate":{"type":["null","string"],"format":"date-time"}}}}}}
```

## The ProductListItemVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ProductListItemVm":{"required":["id","familyId","active"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"familyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"active":{"type":"boolean"},"itemNumber":{"type":["null","string"]},"title":{"type":["null","string"]}}}}}}
```

## The ProductNumberVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ProductNumberVm":{"required":["type","no"],"type":"object","properties":{"type":{"type":"string"},"no":{"type":"string"}}}}}}
```

## The ProductPriceVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ProductPriceVm":{"required":["id","type","price","inclVat","active"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"type":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"currencyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"channelId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"price":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"inclVat":{"type":"boolean"},"active":{"type":"boolean"},"dateStart":{"type":["null","string"],"format":"date-time"},"dateEnd":{"type":["null","string"],"format":"date-time"}}}}}}
```

## The ProductStockVm object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"ProductStockVm":{"required":["id","stockId","amount"],"type":"object","properties":{"id":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"stockId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"format":"int32"},"amount":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"availableDate":{"type":["null","string"],"format":"date-time"}}}}}}
```

## The UpdateFileRequest object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"UpdateFileRequest":{"type":"object","properties":{"filename":{"type":["null","string"]},"folderId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"}},"description":"At least one of Filename/FolderId must be set - only the given field(s) change."}}}}
```

## The UpsertPriceRequest object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"UpsertPriceRequest":{"required":["type","price"],"type":"object","properties":{"type":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"description":"Price type/tier (tenant-defined, matches ProductPrices.Type).","format":"int32"},"currencyId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"channelId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["null","integer","string"],"format":"int32"},"price":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"format":"double"},"inclVat":{"type":"boolean","description":"Whether decimal UpsertPriceRequest.Price already includes VAT."},"active":{"type":"boolean"},"dateStart":{"type":["null","string"],"format":"date-time"},"dateEnd":{"type":["null","string"],"format":"date-time"}}}}}}
```

## The UpsertStockRequest object

```json
{"openapi":"3.1.1","info":{"title":"Easyday Tenant API","version":"v1"},"components":{"schemas":{"UpsertStockRequest":{"required":["stockId","amount"],"type":"object","properties":{"stockId":{"pattern":"^-?(?:0|[1-9]\\d*)$","type":["integer","string"],"description":"Which of the tenant's warehouses (Stocks.Id) this quantity is for.","format":"int32"},"amount":{"pattern":"^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$","type":["number","string"],"description":"New on-hand quantity for this warehouse.","format":"double"},"availableDate":{"type":["null","string"],"format":"date-time"}}}}}}
```
