# Models

## The TimeProperties object

```json
{"openapi":"3.0.1","info":{"title":"Shopping List Service","version":"0.0.1"},"components":{"schemas":{"TimeProperties":{"type":"object","properties":{"epochSecond":{"type":"number"},"nano":{"type":"number"}}}}}}
```

## The shoppinglistItem object

```json
{"openapi":"3.0.1","info":{"title":"Shopping List Service","version":"0.0.1"},"components":{"schemas":{"shoppinglistItem":{"title":"ShoppinglistItem","type":"object","properties":{"id":{"type":"integer"},"productId":{"type":"string"},"quantity":{"type":"number"},"cuttingOption":{"type":"string"},"servicePackagingOption":{"type":"string"},"comment":{"type":"string"},"mixins":{"type":"object","additionalProperties":true}},"required":["productId","quantity"]}}}}
```

## The getShoppingLists object

```json
{"openapi":"3.0.1","info":{"title":"Shopping List Service","version":"0.0.1"},"components":{"schemas":{"getShoppingLists":{"type":"array","items":{"$ref":"#/components/schemas/getShoppingList"}},"getShoppingList":{"type":"object","properties":{"customerId":{"description":"Unique identifier of customer","type":"string"},"metadata":{"deprecated":true,"type":"object","properties":{"createdAt":{"$ref":"#/components/schemas/TimeProperties"},"modifiedAt":{"$ref":"#/components/schemas/TimeProperties"},"version":{"type":"number"}}}},"additionalProperties":{"type":"object","properties":{"name":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/shoppinglistItem"}},"mixins":{"type":"object","additionalProperties":true,"description":"Map of custom shopping lists attributes.\n"},"metadata":{"properties":{"mixins":{"type":"object","additionalProperties":true,"description":"Mixins schemas"},"createdAt":{"$ref":"#/components/schemas/TimeProperties"},"modifiedAt":{"$ref":"#/components/schemas/TimeProperties"},"version":{"type":"number"}}}}}},"TimeProperties":{"type":"object","properties":{"epochSecond":{"type":"number"},"nano":{"type":"number"}}},"shoppinglistItem":{"title":"ShoppinglistItem","type":"object","properties":{"id":{"type":"integer"},"productId":{"type":"string"},"quantity":{"type":"number"},"cuttingOption":{"type":"string"},"servicePackagingOption":{"type":"string"},"comment":{"type":"string"},"mixins":{"type":"object","additionalProperties":true}},"required":["productId","quantity"]}}}}
```

## The getShoppingList object

```json
{"openapi":"3.0.1","info":{"title":"Shopping List Service","version":"0.0.1"},"components":{"schemas":{"getShoppingList":{"type":"object","properties":{"customerId":{"description":"Unique identifier of customer","type":"string"},"metadata":{"deprecated":true,"type":"object","properties":{"createdAt":{"$ref":"#/components/schemas/TimeProperties"},"modifiedAt":{"$ref":"#/components/schemas/TimeProperties"},"version":{"type":"number"}}}},"additionalProperties":{"type":"object","properties":{"name":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/shoppinglistItem"}},"mixins":{"type":"object","additionalProperties":true,"description":"Map of custom shopping lists attributes.\n"},"metadata":{"properties":{"mixins":{"type":"object","additionalProperties":true,"description":"Mixins schemas"},"createdAt":{"$ref":"#/components/schemas/TimeProperties"},"modifiedAt":{"$ref":"#/components/schemas/TimeProperties"},"version":{"type":"number"}}}}}},"TimeProperties":{"type":"object","properties":{"epochSecond":{"type":"number"},"nano":{"type":"number"}}},"shoppinglistItem":{"title":"ShoppinglistItem","type":"object","properties":{"id":{"type":"integer"},"productId":{"type":"string"},"quantity":{"type":"number"},"cuttingOption":{"type":"string"},"servicePackagingOption":{"type":"string"},"comment":{"type":"string"},"mixins":{"type":"object","additionalProperties":true}},"required":["productId","quantity"]}}}}
```

## The ownShoppingListCreateRequest object

```json
{"openapi":"3.0.1","info":{"title":"Shopping List Service","version":"0.0.1"},"components":{"schemas":{"ownShoppingListCreateRequest":{"type":"object","properties":{"name":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/shoppinglistItem"}},"mixins":{"type":"object","additionalProperties":true,"description":"Map of custom shopping lists attributes.\n"},"metadata":{"properties":{"mixins":{"type":"object","additionalProperties":true,"description":"Mixins schemas"}}}},"required":["name"]},"shoppinglistItem":{"title":"ShoppinglistItem","type":"object","properties":{"id":{"type":"integer"},"productId":{"type":"string"},"quantity":{"type":"number"},"cuttingOption":{"type":"string"},"servicePackagingOption":{"type":"string"},"comment":{"type":"string"},"mixins":{"type":"object","additionalProperties":true}},"required":["productId","quantity"]}}}}
```

## The ownShoppingListUpdateRequest object

```json
{"openapi":"3.0.1","info":{"title":"Shopping List Service","version":"0.0.1"},"components":{"schemas":{"ownShoppingListUpdateRequest":{"allOf":[{"$ref":"#/components/schemas/ownShoppingListCreateRequest"}],"properties":{"metadata":{"properties":{"mixins":{"type":"object","additionalProperties":true,"description":"Mixins schemas"},"version":{"type":"integer"}}}}},"ownShoppingListCreateRequest":{"type":"object","properties":{"name":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/shoppinglistItem"}},"mixins":{"type":"object","additionalProperties":true,"description":"Map of custom shopping lists attributes.\n"},"metadata":{"properties":{"mixins":{"type":"object","additionalProperties":true,"description":"Mixins schemas"}}}},"required":["name"]},"shoppinglistItem":{"title":"ShoppinglistItem","type":"object","properties":{"id":{"type":"integer"},"productId":{"type":"string"},"quantity":{"type":"number"},"cuttingOption":{"type":"string"},"servicePackagingOption":{"type":"string"},"comment":{"type":"string"},"mixins":{"type":"object","additionalProperties":true}},"required":["productId","quantity"]}}}}
```

## The employeeShoppingListCreateRequest object

```json
{"openapi":"3.0.1","info":{"title":"Shopping List Service","version":"0.0.1"},"components":{"schemas":{"employeeShoppingListCreateRequest":{"allOf":[{"$ref":"#/components/schemas/ownShoppingListCreateRequest"}],"properties":{"customerId":{"type":"string","description":"Unique identifier of customer"},"mixins":{"type":"object","additionalProperties":true,"description":"Map of custom shopping lists attributes.\n"},"metadata":{"properties":{"mixins":{"type":"object","additionalProperties":true,"description":"Mixins schemas"}}}}},"ownShoppingListCreateRequest":{"type":"object","properties":{"name":{"type":"string"},"items":{"type":"array","items":{"$ref":"#/components/schemas/shoppinglistItem"}},"mixins":{"type":"object","additionalProperties":true,"description":"Map of custom shopping lists attributes.\n"},"metadata":{"properties":{"mixins":{"type":"object","additionalProperties":true,"description":"Mixins schemas"}}}},"required":["name"]},"shoppinglistItem":{"title":"ShoppinglistItem","type":"object","properties":{"id":{"type":"integer"},"productId":{"type":"string"},"quantity":{"type":"number"},"cuttingOption":{"type":"string"},"servicePackagingOption":{"type":"string"},"comment":{"type":"string"},"mixins":{"type":"object","additionalProperties":true}},"required":["productId","quantity"]}}}}
```
