# Models

## The InventoryIsolated object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"InventoryIsolated":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/InventoryIsolatedItem"}}}},"InventoryIsolatedItem":{"type":"object","required":["serverId","serial","name","hostname","locationId","instanceTypeId","state","subState","operationUuid","additionalMessage"],"properties":{"serverId":{"type":"integer","format":"int","minimum":0},"serial":{"type":"string"},"name":{"type":"string"},"hostname":{"type":"string"},"locationId":{"type":"integer","format":"int","minimum":0},"instanceTypeId":{"type":"integer","format":"int","minimum":0},"state":{"type":"string","enum":["new","isolated","backToBaseline","available","allocated","decommissioned"]},"subState":{"type":"string","enum":["backToBaseline","excluded","reserved","brokenHardware","incompleteData","failedOsInstall","unknownError","rentedLegacy","quarantined"]},"operationUuid":{"type":"string","format":"uuid"},"isolationReason":{"type":"string"},"isolationDate":{"type":"string","format":"date-time"}}}}}}
```

## The InventoryIsolatedItem object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"InventoryIsolatedItem":{"type":"object","required":["serverId","serial","name","hostname","locationId","instanceTypeId","state","subState","operationUuid","additionalMessage"],"properties":{"serverId":{"type":"integer","format":"int","minimum":0},"serial":{"type":"string"},"name":{"type":"string"},"hostname":{"type":"string"},"locationId":{"type":"integer","format":"int","minimum":0},"instanceTypeId":{"type":"integer","format":"int","minimum":0},"state":{"type":"string","enum":["new","isolated","backToBaseline","available","allocated","decommissioned"]},"subState":{"type":"string","enum":["backToBaseline","excluded","reserved","brokenHardware","incompleteData","failedOsInstall","unknownError","rentedLegacy","quarantined"]},"operationUuid":{"type":"string","format":"uuid"},"isolationReason":{"type":"string"},"isolationDate":{"type":"string","format":"date-time"}}}}}}
```

## The InventoryAvailability object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"InventoryAvailability":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/InventoryAvailabilityItem"}}}},"InventoryAvailabilityItem":{"type":"object","required":["locationId","locationName","instanceTypeId","instanceTypeName","available","allocated","allocatedLegacy","committedUnderContract","allocatedUnderContract","isolated","baseline"],"properties":{"locationId":{"type":"integer","format":"int"},"locationName":{"type":"string"},"instanceTypeId":{"type":"integer","format":"int"},"instanceTypeName":{"type":"string"},"available":{"type":"integer","format":"int"},"allocated":{"type":"integer","format":"int"},"allocatedLegacy":{"type":"integer","format":"int"},"committedUnderContract":{"type":"integer","format":"int"},"allocatedUnderContract":{"type":"integer","format":"int"},"isolated":{"type":"integer","format":"int"},"baseline":{"type":"integer","format":"int"}}}}}}
```

## The InventoryAvailabilityItem object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"InventoryAvailabilityItem":{"type":"object","required":["locationId","locationName","instanceTypeId","instanceTypeName","available","allocated","allocatedLegacy","committedUnderContract","allocatedUnderContract","isolated","baseline"],"properties":{"locationId":{"type":"integer","format":"int"},"locationName":{"type":"string"},"instanceTypeId":{"type":"integer","format":"int"},"instanceTypeName":{"type":"string"},"available":{"type":"integer","format":"int"},"allocated":{"type":"integer","format":"int"},"allocatedLegacy":{"type":"integer","format":"int"},"committedUnderContract":{"type":"integer","format":"int"},"allocatedUnderContract":{"type":"integer","format":"int"},"isolated":{"type":"integer","format":"int"},"baseline":{"type":"integer","format":"int"}}}}}}
```

## The Ready object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"Ready":{"type":"object","properties":{"status":{"type":"string"}}}}}}
```

## The Healthy object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"Healthy":{"type":"object","properties":{"status":{"type":"string"}}}}}}
```

## The Server object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"Server":{"type":"object","properties":{"server":{"$ref":"#/components/schemas/ServerModel"}}},"ServerModel":{"type":"object","required":["ipAddresses","macAddresses","disks"],"properties":{"serverId":{"type":"integer","format":"int","minimum":0},"machineUuid":{"type":"string"},"serial":{"type":"string"},"name":{"type":"string"},"hostname":{"type":"string"},"locationId":{"type":"integer","format":"int","minimum":0},"locationName":{"type":"string"},"instanceTypeId":{"type":"integer","format":"int","minimum":0},"instanceTypeName":{"type":"string"},"clientId":{"type":"integer","format":"int","minimum":0,"description":"The K number of the client this server is allocated to. Or 0 if unallocated."},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"},"state":{"type":"string","enum":["new","isolated","backToBaseline","available","allocated","decommissioned"]},"subState":{"type":"string"},"vendor":{"type":"string"},"chassis":{"type":"string"},"firmwareVersion":{"type":"number","format":"double"},"ipmiVersion":{"type":"number","format":"double"},"ipAddresses":{"type":"array","items":{"$ref":"#/components/schemas/IpAddressSum"}},"macAddresses":{"type":"array","items":{"$ref":"#/components/schemas/MacAddressSum"}},"disks":{"type":"array","items":{"$ref":"#/components/schemas/DiskSum"}},"isolationReason":{"$ref":"#/components/schemas/IsolationReason"}}},"IpAddressSum":{"type":"object","properties":{"ipAddress":{"type":"string"},"ipType":{"type":"string"},"ipVersion":{"type":"string"}}},"MacAddressSum":{"type":"object","properties":{"macAddress":{"type":"string"},"macType":{"type":"string"}}},"DiskSum":{"type":"object","properties":{"name":{"type":"string"},"interface":{"type":"string"},"type":{"type":"string"}}},"IsolationReason":{"type":"object","properties":{"operationUuid":{"type":"string","format":"uuid"},"reason":{"type":"string"},"createdAt":{"type":"string","format":"date-time"}}}}}}
```

## The ServerAvailabilityVerifyResponse object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerAvailabilityVerifyResponse":{"type":"object","properties":{"result":{"type":"boolean"},"details":{"type":"array","items":{"$ref":"#/components/schemas/ServerAvailabilityVerifyDetail"}}}},"ServerAvailabilityVerifyDetail":{"type":"object","properties":{"name":{"type":"string"},"result":{"type":"boolean"},"message":{"type":"string"}}}}}}
```

## The ServerAvailabilityVerifyDetail object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerAvailabilityVerifyDetail":{"type":"object","properties":{"name":{"type":"string"},"result":{"type":"boolean"},"message":{"type":"string"}}}}}}
```

## The ServerAllocationResponse object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerAllocationResponse":{"type":"object","properties":{"server":{"$ref":"#/components/schemas/ServerModel"},"quota":{"$ref":"#/components/schemas/ServerQuotaItem"}}},"ServerModel":{"type":"object","required":["ipAddresses","macAddresses","disks"],"properties":{"serverId":{"type":"integer","format":"int","minimum":0},"machineUuid":{"type":"string"},"serial":{"type":"string"},"name":{"type":"string"},"hostname":{"type":"string"},"locationId":{"type":"integer","format":"int","minimum":0},"locationName":{"type":"string"},"instanceTypeId":{"type":"integer","format":"int","minimum":0},"instanceTypeName":{"type":"string"},"clientId":{"type":"integer","format":"int","minimum":0,"description":"The K number of the client this server is allocated to. Or 0 if unallocated."},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"},"state":{"type":"string","enum":["new","isolated","backToBaseline","available","allocated","decommissioned"]},"subState":{"type":"string"},"vendor":{"type":"string"},"chassis":{"type":"string"},"firmwareVersion":{"type":"number","format":"double"},"ipmiVersion":{"type":"number","format":"double"},"ipAddresses":{"type":"array","items":{"$ref":"#/components/schemas/IpAddressSum"}},"macAddresses":{"type":"array","items":{"$ref":"#/components/schemas/MacAddressSum"}},"disks":{"type":"array","items":{"$ref":"#/components/schemas/DiskSum"}},"isolationReason":{"$ref":"#/components/schemas/IsolationReason"}}},"IpAddressSum":{"type":"object","properties":{"ipAddress":{"type":"string"},"ipType":{"type":"string"},"ipVersion":{"type":"string"}}},"MacAddressSum":{"type":"object","properties":{"macAddress":{"type":"string"},"macType":{"type":"string"}}},"DiskSum":{"type":"object","properties":{"name":{"type":"string"},"interface":{"type":"string"},"type":{"type":"string"}}},"IsolationReason":{"type":"object","properties":{"operationUuid":{"type":"string","format":"uuid"},"reason":{"type":"string"},"createdAt":{"type":"string","format":"date-time"}}},"ServerQuotaItem":{"type":"object","description":"ServerQuotaItem object","required":["clientId","instanceTypeId","locationId","quota"],"properties":{"id":{"type":"integer","format":"int","minimum":0,"readOnly":true},"clientId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 for default quota"},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for default and basic client quota"},"locationId":{"type":"integer","format":"int16","minimum":0,"maximum":32767,"description":"Pass 0 combined with instanceTypeId 0 to define max quota for an entire client"},"instanceTypeId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 to define with locationId > 0 to define max quota for an entire location"},"quota":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}}}}
```

## The ServerCollection object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerCollection":{"type":"object","properties":{"servers":{"type":"array","items":{"$ref":"#/components/schemas/Server"}}}},"Server":{"type":"object","properties":{"server":{"$ref":"#/components/schemas/ServerModel"}}},"ServerModel":{"type":"object","required":["ipAddresses","macAddresses","disks"],"properties":{"serverId":{"type":"integer","format":"int","minimum":0},"machineUuid":{"type":"string"},"serial":{"type":"string"},"name":{"type":"string"},"hostname":{"type":"string"},"locationId":{"type":"integer","format":"int","minimum":0},"locationName":{"type":"string"},"instanceTypeId":{"type":"integer","format":"int","minimum":0},"instanceTypeName":{"type":"string"},"clientId":{"type":"integer","format":"int","minimum":0,"description":"The K number of the client this server is allocated to. Or 0 if unallocated."},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"},"state":{"type":"string","enum":["new","isolated","backToBaseline","available","allocated","decommissioned"]},"subState":{"type":"string"},"vendor":{"type":"string"},"chassis":{"type":"string"},"firmwareVersion":{"type":"number","format":"double"},"ipmiVersion":{"type":"number","format":"double"},"ipAddresses":{"type":"array","items":{"$ref":"#/components/schemas/IpAddressSum"}},"macAddresses":{"type":"array","items":{"$ref":"#/components/schemas/MacAddressSum"}},"disks":{"type":"array","items":{"$ref":"#/components/schemas/DiskSum"}},"isolationReason":{"$ref":"#/components/schemas/IsolationReason"}}},"IpAddressSum":{"type":"object","properties":{"ipAddress":{"type":"string"},"ipType":{"type":"string"},"ipVersion":{"type":"string"}}},"MacAddressSum":{"type":"object","properties":{"macAddress":{"type":"string"},"macType":{"type":"string"}}},"DiskSum":{"type":"object","properties":{"name":{"type":"string"},"interface":{"type":"string"},"type":{"type":"string"}}},"IsolationReason":{"type":"object","properties":{"operationUuid":{"type":"string","format":"uuid"},"reason":{"type":"string"},"createdAt":{"type":"string","format":"date-time"}}}}}}
```

## The ServerModel object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerModel":{"type":"object","required":["ipAddresses","macAddresses","disks"],"properties":{"serverId":{"type":"integer","format":"int","minimum":0},"machineUuid":{"type":"string"},"serial":{"type":"string"},"name":{"type":"string"},"hostname":{"type":"string"},"locationId":{"type":"integer","format":"int","minimum":0},"locationName":{"type":"string"},"instanceTypeId":{"type":"integer","format":"int","minimum":0},"instanceTypeName":{"type":"string"},"clientId":{"type":"integer","format":"int","minimum":0,"description":"The K number of the client this server is allocated to. Or 0 if unallocated."},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"},"state":{"type":"string","enum":["new","isolated","backToBaseline","available","allocated","decommissioned"]},"subState":{"type":"string"},"vendor":{"type":"string"},"chassis":{"type":"string"},"firmwareVersion":{"type":"number","format":"double"},"ipmiVersion":{"type":"number","format":"double"},"ipAddresses":{"type":"array","items":{"$ref":"#/components/schemas/IpAddressSum"}},"macAddresses":{"type":"array","items":{"$ref":"#/components/schemas/MacAddressSum"}},"disks":{"type":"array","items":{"$ref":"#/components/schemas/DiskSum"}},"isolationReason":{"$ref":"#/components/schemas/IsolationReason"}}},"IpAddressSum":{"type":"object","properties":{"ipAddress":{"type":"string"},"ipType":{"type":"string"},"ipVersion":{"type":"string"}}},"MacAddressSum":{"type":"object","properties":{"macAddress":{"type":"string"},"macType":{"type":"string"}}},"DiskSum":{"type":"object","properties":{"name":{"type":"string"},"interface":{"type":"string"},"type":{"type":"string"}}},"IsolationReason":{"type":"object","properties":{"operationUuid":{"type":"string","format":"uuid"},"reason":{"type":"string"},"createdAt":{"type":"string","format":"date-time"}}}}}}
```

## The IsolationReason object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"IsolationReason":{"type":"object","properties":{"operationUuid":{"type":"string","format":"uuid"},"reason":{"type":"string"},"createdAt":{"type":"string","format":"date-time"}}}}}}
```

## The MacAddressSum object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"MacAddressSum":{"type":"object","properties":{"macAddress":{"type":"string"},"macType":{"type":"string"}}}}}}
```

## The DiskSum object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"DiskSum":{"type":"object","properties":{"name":{"type":"string"},"interface":{"type":"string"},"type":{"type":"string"}}}}}}
```

## The IpAddressSum object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"IpAddressSum":{"type":"object","properties":{"ipAddress":{"type":"string"},"ipType":{"type":"string"},"ipVersion":{"type":"string"}}}}}}
```

## The ServerLshw object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerLshw":{"type":"object","required":["serverLshw"],"properties":{"serverLshw":{"type":"object","required":["createdAt"],"properties":{"createdAt":{"type":"integer","format":"uint","description":"Unix timestamp of when this lshw dump was created"},"lshw":{"type":"string","description":"The lshw json dump in string format (manually unmarshall it if needed)"}}}}}}}}
```

## The ServerMemory object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerMemory":{"type":"object","properties":{"serverMemory":{"type":"array","items":{"$ref":"#/components/schemas/ServerMemoryModule"}}}},"ServerMemoryModule":{"type":"object","properties":{"size":{"description":"Module size in MiB","type":"integer","format":"int","minimum":0}}}}}}
```

## The ServerMemoryModule object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerMemoryModule":{"type":"object","properties":{"size":{"description":"Module size in MiB","type":"integer","format":"int","minimum":0}}}}}}
```

## The ServerStorage object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerStorage":{"type":"object","properties":{"serverStorage":{"type":"array","items":{"$ref":"#/components/schemas/ServerStorageDisk"}}}},"ServerStorageDisk":{"type":"object","properties":{"size":{"description":"Module size in MB","type":"integer","format":"int","minimum":0}}}}}}
```

## The ServerStorageDisk object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerStorageDisk":{"type":"object","properties":{"size":{"description":"Module size in MB","type":"integer","format":"int","minimum":0}}}}}}
```

## The ServerIface object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerIface":{"type":"object","properties":{"serverInterfaces":{"type":"array","items":{"$ref":"#/components/schemas/ServerIfaceNic"}}}},"ServerIfaceNic":{"type":"object","properties":{"vendor":{"type":"string"}}}}}}
```

## The ServerIfaceNic object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerIfaceNic":{"type":"object","properties":{"vendor":{"type":"string"}}}}}}
```

## The ServerAllocation object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerAllocation":{"type":"object","description":"Allocation request object","required":["locationId","instanceTypeId","clientId"],"properties":{"locationId":{"type":"integer","minimum":1},"instanceTypeId":{"type":"integer","minimum":1},"clientId":{"type":"integer","minimum":0},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"},"overflow":{"type":"boolean","default":false,"description":"If true, the allocation will be allowed to overflow the client's quota and use on-demand quota"}}}}}}
```

## The ServerIsolation object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerIsolation":{"type":"object","description":"Isolation request object","required":["subState"],"properties":{"subState":{"type":"string","enum":["backToBaseline","excluded","reserved","brokenHardware","incompleteData","failedOsInstall","unknownError","rentedLegacy","quarantined"]},"operationUuid":{"type":"string","format":"uuid","description":"The operationUuid reference from MetalWorks"},"reason":{"type":"string"}}}}}}
```

## The ServerQuotaClients object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerQuotaClients":{"type":"object","description":"ServerQuotaClients containing a list of client IDs that have custom quota","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ServerQuotaClient"}}}},"ServerQuotaClient":{"type":"object","description":"ServerQuotaClient containing a client ID and optional contract ID","required":["clientId"],"properties":{"clientId":{"type":"integer","format":"int","minimum":1},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"}}}}}}
```

## The ServerQuotaClient object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerQuotaClient":{"type":"object","description":"ServerQuotaClient containing a client ID and optional contract ID","required":["clientId"],"properties":{"clientId":{"type":"integer","format":"int","minimum":1},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"}}}}}}
```

## The ServerQuota object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerQuota":{"type":"object","description":"ServerQuota object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ServerQuotaItem"}}}},"ServerQuotaItem":{"type":"object","description":"ServerQuotaItem object","required":["clientId","instanceTypeId","locationId","quota"],"properties":{"id":{"type":"integer","format":"int","minimum":0,"readOnly":true},"clientId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 for default quota"},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for default and basic client quota"},"locationId":{"type":"integer","format":"int16","minimum":0,"maximum":32767,"description":"Pass 0 combined with instanceTypeId 0 to define max quota for an entire client"},"instanceTypeId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 to define with locationId > 0 to define max quota for an entire location"},"quota":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}}}}
```

## The ServerQuotaBulk object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerQuotaBulk":{"type":"object","description":"ServerQuotaBulk to update all (client) quota for a contract ID in 1 go","required":["items"],"properties":{"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for on-demand client quota"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ServerQuotaItem"}}}},"ServerQuotaItem":{"type":"object","description":"ServerQuotaItem object","required":["clientId","instanceTypeId","locationId","quota"],"properties":{"id":{"type":"integer","format":"int","minimum":0,"readOnly":true},"clientId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 for default quota"},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for default and basic client quota"},"locationId":{"type":"integer","format":"int16","minimum":0,"maximum":32767,"description":"Pass 0 combined with instanceTypeId 0 to define max quota for an entire client"},"instanceTypeId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 to define with locationId > 0 to define max quota for an entire location"},"quota":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}}}}
```

## The ServerQuotaItem object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerQuotaItem":{"type":"object","description":"ServerQuotaItem object","required":["clientId","instanceTypeId","locationId","quota"],"properties":{"id":{"type":"integer","format":"int","minimum":0,"readOnly":true},"clientId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 for default quota"},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for default and basic client quota"},"locationId":{"type":"integer","format":"int16","minimum":0,"maximum":32767,"description":"Pass 0 combined with instanceTypeId 0 to define max quota for an entire client"},"instanceTypeId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 to define with locationId > 0 to define max quota for an entire location"},"quota":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}}}}
```

## The ServerQuotaUsage object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerQuotaUsage":{"type":"object","description":"ServerQuotaUsage object","required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ServerQuotaUsageItem"}}}},"ServerQuotaUsageItem":{"type":"object","description":"ServerQuotaItem response object with usage number","required":["usage"],"allOf":[{"$ref":"#/components/schemas/ServerQuotaItem"},{"type":"object","required":["usage"],"properties":{"usage":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}]},"ServerQuotaItem":{"type":"object","description":"ServerQuotaItem object","required":["clientId","instanceTypeId","locationId","quota"],"properties":{"id":{"type":"integer","format":"int","minimum":0,"readOnly":true},"clientId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 for default quota"},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for default and basic client quota"},"locationId":{"type":"integer","format":"int16","minimum":0,"maximum":32767,"description":"Pass 0 combined with instanceTypeId 0 to define max quota for an entire client"},"instanceTypeId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 to define with locationId > 0 to define max quota for an entire location"},"quota":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}}}}
```

## The ServerQuotaUsageItem object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ServerQuotaUsageItem":{"type":"object","description":"ServerQuotaItem response object with usage number","required":["usage"],"allOf":[{"$ref":"#/components/schemas/ServerQuotaItem"},{"type":"object","required":["usage"],"properties":{"usage":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}]},"ServerQuotaItem":{"type":"object","description":"ServerQuotaItem object","required":["clientId","instanceTypeId","locationId","quota"],"properties":{"id":{"type":"integer","format":"int","minimum":0,"readOnly":true},"clientId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 for default quota"},"contractId":{"type":"string","pattern":"^[A-Z0-9_\\-.]{0,240}$","description":"Can be empty or null for default and basic client quota"},"locationId":{"type":"integer","format":"int16","minimum":0,"maximum":32767,"description":"Pass 0 combined with instanceTypeId 0 to define max quota for an entire client"},"instanceTypeId":{"type":"integer","format":"int","minimum":0,"description":"Pass 0 to define with locationId > 0 to define max quota for an entire location"},"quota":{"type":"integer","format":"int16","minimum":0,"maximum":32767}}}}}}
```

## The ErrorResponse object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"ErrorResponse":{"type":"object","description":"Error response object","properties":{"error":{"type":"string"}}}}}}
```

## The PatchRequest object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"PatchRequest":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/JSONPatchRequestReplace"}]}}}},"JSONPatchRequestReplace":{"type":"object","additionalProperties":false,"required":["op","path","value"],"properties":{"op":{"description":"The operation to perform.","type":"string","enum":["replace"]},"path":{"description":"A JSON Pointer path.","type":"string","enum":["instanceTypeId","locationId"]},"value":{"description":"The value to add, replace or test."}}}}}}
```

## The JSONPatchRequestReplace object

```json
{"openapi":"3.0.3","info":{"title":"Inventory Service - OpenAPI 3.0","version":"0.1.0"},"components":{"schemas":{"JSONPatchRequestReplace":{"type":"object","additionalProperties":false,"required":["op","path","value"],"properties":{"op":{"description":"The operation to perform.","type":"string","enum":["replace"]},"path":{"description":"A JSON Pointer path.","type":"string","enum":["instanceTypeId","locationId"]},"value":{"description":"The value to add, replace or test."}}}}}}
```


---

# Agent Instructions: 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://docs.i3d.net/api-references/inventory/models-1.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.
