# Models

## The ImageCreate object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"ImageCreate":{"type":"object","properties":{"id":{"format":"uuid","description":"A unique, user-defined image UUID","type":"string"},"name":{"description":"The name of the image","type":"string"},"container_format":{"description":"Format of the image container","enum":["ami","ari","aki","bare","ovf","ova","docker","compressed"],"type":"string"},"disk_format":{"description":"The format of the disk","enum":["ami","ari","aki","vhd","vhdx","vmdk","raw","qcow2","vdi","iso","ploop"],"type":"string"},"min_disk":{"description":"Amount of disk space in GB that is required to boot the image","type":"integer"},"min_ram":{"description":"Amount of RAM in MB that is required to boot the image","type":"integer"},"protected":{"description":"Image protection for deletion","type":"boolean"},"tags":{"description":"List of tags for this image","type":"array","items":{"maxLength":255,"type":"string"}},"visibility":{"description":"Visibility for this image","enum":["public","private","community","shared"],"type":"string"}},"additionalProperties":{"description":"Additional custom properties","type":"string"}}}}}
```

## The Image object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"Image":{"required":["id","status","visibility","protected","tags","created_at","updated_at","self","schema"],"type":"object","properties":{"id":{"format":"uuid","description":"A unique identifier for the image","type":"string","readOnly":true},"name":{"nullable":true,"description":"The name of the image","type":"string"},"status":{"description":"The image status","enum":["queued","saving","active","killed","deleted","pending_delete","deactivated","uploading","importing"],"type":"string","readOnly":true},"visibility":{"description":"Image visibility","enum":["public","private","community","shared"],"type":"string"},"protected":{"description":"Image protection for deletion","type":"boolean"},"tags":{"description":"List of tags for this image","type":"array","items":{"maxLength":255,"type":"string"}},"container_format":{"nullable":true,"description":"Format of the image container","enum":["ami","ari","aki","bare","ovf","ova","docker","compressed"],"type":"string"},"disk_format":{"nullable":true,"description":"The format of the disk","enum":["ami","ari","aki","vhd","vhdx","vmdk","raw","qcow2","vdi","iso","ploop"],"type":"string"},"min_disk":{"description":"Amount of disk space in GB required to boot the image","type":"integer"},"min_ram":{"description":"Amount of RAM in MB required to boot the image","type":"integer"},"size":{"nullable":true,"description":"The size of the image data, in bytes","type":"integer","readOnly":true},"virtual_size":{"nullable":true,"description":"The virtual size of the image","type":"integer","readOnly":true},"checksum":{"nullable":true,"description":"MD5 hash of image contents","type":"string","readOnly":true},"os_hash_algo":{"nullable":true,"description":"Algorithm used to compute secure hash","type":"string","readOnly":true},"os_hash_value":{"nullable":true,"description":"Hexdigest of the secure hash","type":"string","readOnly":true},"os_hidden":{"description":"Controls whether image is displayed in default image list","type":"boolean"},"owner":{"nullable":true,"description":"An identifier for the owner of the image","type":"string","readOnly":true},"created_at":{"format":"date-time","description":"Date and time when the image was created","type":"string","readOnly":true},"updated_at":{"format":"date-time","description":"Date and time when the image was last updated","type":"string","readOnly":true},"self":{"format":"uri","description":"URL for the image","type":"string","readOnly":true},"file":{"format":"uri","description":"URL for the image file","type":"string","readOnly":true},"schema":{"format":"uri","description":"URL for the schema describing the image","type":"string","readOnly":true},"direct_url":{"format":"uri","description":"URL to access the image file kept in external store","type":"string","readOnly":true},"locations":{"description":"List of image locations","type":"array","items":{"type":"object","properties":{"url":{"format":"uri","type":"string"},"metadata":{"type":"object"}}},"readOnly":true}},"additionalProperties":{"description":"Additional custom properties","type":"string"}}}}}
```

## The ImageList object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"ImageList":{"type":"object","properties":{"images":{"type":"array","items":{"$ref":"#/components/schemas/Image"}},"first":{"format":"uri","description":"URI for the first page of response","type":"string"},"next":{"format":"uri","description":"URI for the next page of response","type":"string"},"schema":{"format":"uri","description":"URL for the schema describing a list of images","type":"string"}}},"Image":{"required":["id","status","visibility","protected","tags","created_at","updated_at","self","schema"],"type":"object","properties":{"id":{"format":"uuid","description":"A unique identifier for the image","type":"string","readOnly":true},"name":{"nullable":true,"description":"The name of the image","type":"string"},"status":{"description":"The image status","enum":["queued","saving","active","killed","deleted","pending_delete","deactivated","uploading","importing"],"type":"string","readOnly":true},"visibility":{"description":"Image visibility","enum":["public","private","community","shared"],"type":"string"},"protected":{"description":"Image protection for deletion","type":"boolean"},"tags":{"description":"List of tags for this image","type":"array","items":{"maxLength":255,"type":"string"}},"container_format":{"nullable":true,"description":"Format of the image container","enum":["ami","ari","aki","bare","ovf","ova","docker","compressed"],"type":"string"},"disk_format":{"nullable":true,"description":"The format of the disk","enum":["ami","ari","aki","vhd","vhdx","vmdk","raw","qcow2","vdi","iso","ploop"],"type":"string"},"min_disk":{"description":"Amount of disk space in GB required to boot the image","type":"integer"},"min_ram":{"description":"Amount of RAM in MB required to boot the image","type":"integer"},"size":{"nullable":true,"description":"The size of the image data, in bytes","type":"integer","readOnly":true},"virtual_size":{"nullable":true,"description":"The virtual size of the image","type":"integer","readOnly":true},"checksum":{"nullable":true,"description":"MD5 hash of image contents","type":"string","readOnly":true},"os_hash_algo":{"nullable":true,"description":"Algorithm used to compute secure hash","type":"string","readOnly":true},"os_hash_value":{"nullable":true,"description":"Hexdigest of the secure hash","type":"string","readOnly":true},"os_hidden":{"description":"Controls whether image is displayed in default image list","type":"boolean"},"owner":{"nullable":true,"description":"An identifier for the owner of the image","type":"string","readOnly":true},"created_at":{"format":"date-time","description":"Date and time when the image was created","type":"string","readOnly":true},"updated_at":{"format":"date-time","description":"Date and time when the image was last updated","type":"string","readOnly":true},"self":{"format":"uri","description":"URL for the image","type":"string","readOnly":true},"file":{"format":"uri","description":"URL for the image file","type":"string","readOnly":true},"schema":{"format":"uri","description":"URL for the schema describing the image","type":"string","readOnly":true},"direct_url":{"format":"uri","description":"URL to access the image file kept in external store","type":"string","readOnly":true},"locations":{"description":"List of image locations","type":"array","items":{"type":"object","properties":{"url":{"format":"uri","type":"string"},"metadata":{"type":"object"}}},"readOnly":true}},"additionalProperties":{"description":"Additional custom properties","type":"string"}}}}}
```

## The JsonPatchOperation object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"JsonPatchOperation":{"required":["op","path"],"type":"object","properties":{"op":{"description":"The operation to perform","enum":["add","remove","replace"],"type":"string"},"path":{"description":"JSON pointer to the location in the target document","type":"string"},"value":{"description":"The value to use for the operation"}},"additionalProperties":false}}}}
```

## The ImageImport object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"ImageImport":{"required":["method"],"type":"object","properties":{"method":{"required":["name"],"type":"object","properties":{"name":{"description":"Import method name","enum":["glance-direct","web-download","copy-image","glance-download"],"type":"string"},"uri":{"format":"uri","description":"URI for web-download method","type":"string"},"glance_image_id":{"format":"uuid","description":"Image ID for glance-download method","type":"string"},"glance_region":{"description":"Region for glance-download method","type":"string"},"glance_service_interface":{"description":"Service interface for glance-download method","type":"string"}}},"stores":{"description":"List of store identifiers to import to","type":"array","items":{"type":"string"}},"all_stores":{"description":"Import to all available stores","type":"boolean"},"all_stores_must_succeed":{"description":"Whether all stores must succeed for the operation to succeed","type":"boolean"}}}}}}
```

## The ImportInfo object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"ImportInfo":{"type":"object","properties":{"import-methods":{"type":"object","properties":{"description":{"type":"string"},"type":{"type":"string"},"value":{"type":"array","items":{"type":"string"}}}}}}}}}
```

## The StoreInfo object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"StoreInfo":{"type":"object","properties":{"stores":{"type":"array","items":{"type":"object","properties":{"id":{"description":"Store identifier","type":"string"},"description":{"description":"Store description","type":"string"},"default":{"description":"Whether this is the default store","type":"boolean"},"read-only":{"description":"Whether this store is read-only","type":"boolean"}}}}}}}}}
```

## The UsageInfo object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"UsageInfo":{"type":"object","properties":{"usage":{"type":"object","properties":{"image_size_total":{"type":"object","properties":{"limit":{"type":"integer"},"usage":{"type":"integer"}}},"image_count_total":{"type":"object","properties":{"limit":{"type":"integer"},"usage":{"type":"integer"}}},"image_stage_total":{"type":"object","properties":{"limit":{"type":"integer"},"usage":{"type":"integer"}}},"image_count_uploading":{"type":"object","properties":{"limit":{"type":"integer"},"usage":{"type":"integer"}}}}}}}}}}
```

## The Error object

```json
{"openapi":"3.0.3","info":{"title":"OpenStack Image Service API v2","version":"2.0"},"components":{"schemas":{"Error":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"integer"},"message":{"type":"string"},"details":{"type":"string"}}}}}}}}
```
