{
  "opencollection": "1.0.0",
  "info": {
    "name": "Incus external REST certificates images API",
    "version": "1.0"
  },
  "items": [
    {
      "info": {
        "name": "images",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get the images",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              },
              {
                "name": "filter",
                "value": "default",
                "type": "query",
                "description": "Collection filter"
              },
              {
                "name": "all-projects",
                "value": "",
                "type": "query",
                "description": "Retrieve images from all projects"
              }
            ]
          },
          "docs": "Returns a list of images (URLs)."
        },
        {
          "info": {
            "name": "Add an image",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/1.0/images",
            "headers": [
              {
                "name": "X-Incus-secret",
                "value": "RANDOM-STRING"
              },
              {
                "name": "X-Incus-fingerprint",
                "value": ""
              },
              {
                "name": "X-Incus-aliases",
                "value": ""
              },
              {
                "name": "X-Incus-properties",
                "value": ""
              },
              {
                "name": "X-Incus-public",
                "value": ""
              },
              {
                "name": "X-Incus-filename",
                "value": ""
              },
              {
                "name": "X-Incus-profiles",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Adds a new image to the image store."
        },
        {
          "info": {
            "name": "Get the image",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/:fingerprint",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Gets a specific image."
        },
        {
          "info": {
            "name": "Update the image",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "{{baseUrl}}/1.0/images/:fingerprint",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Updates the entire image definition."
        },
        {
          "info": {
            "name": "Partially update the image",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "{{baseUrl}}/1.0/images/:fingerprint",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Updates a subset of the image definition."
        },
        {
          "info": {
            "name": "Delete the image",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/1.0/images/:fingerprint",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Removes the image from the image store."
        },
        {
          "info": {
            "name": "Get the raw image file(s)",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/:fingerprint/export",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Download the raw image file(s) from the server.\nIf the image is in split format, a multipart http transfer occurs."
        },
        {
          "info": {
            "name": "Make the server push the image to a remote server",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/1.0/images/:fingerprint/export",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Gets the server to connect to a remote server and push the image to it."
        },
        {
          "info": {
            "name": "Get the raw image file(s)",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/:fingerprint/export?public",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              },
              {
                "name": "secret",
                "value": "RANDOM-STRING",
                "type": "query",
                "description": "Secret token to retrieve a private image"
              }
            ]
          },
          "docs": "Download the raw image file(s) of a public image from the server.\nIf the image is in split format, a multipart http transfer occurs."
        },
        {
          "info": {
            "name": "Refresh an image",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/1.0/images/:fingerprint/refresh",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "This causes the server to check the image source server for an updated\nversion of the image and if available to refresh the local copy with the\nnew version."
        },
        {
          "info": {
            "name": "Generate secret for retrieval of the image by an untrusted client",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/1.0/images/:fingerprint/secret",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "This generates a background operation including a secret one time key\nin its metadata which can be used to fetch this image from an untrusted\nclient."
        },
        {
          "info": {
            "name": "Get the public image",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/:fingerprint?public",
            "params": [
              {
                "name": "fingerprint",
                "value": "",
                "type": "path",
                "description": "Fingerprint"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              },
              {
                "name": "secret",
                "value": "RANDOM-STRING",
                "type": "query",
                "description": "Secret token to retrieve a private image"
              }
            ]
          },
          "docs": "Gets a specific public image."
        },
        {
          "info": {
            "name": "Get the image aliases",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/aliases",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Returns a list of image aliases (URLs)."
        },
        {
          "info": {
            "name": "Add an image alias",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/1.0/images/aliases",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Creates a new image alias."
        },
        {
          "info": {
            "name": "Get the image alias",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/aliases/:name",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path",
                "description": "Alias name"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Gets a specific image alias."
        },
        {
          "info": {
            "name": "Rename the image alias",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/1.0/images/aliases/:name",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path",
                "description": "Alias name"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Renames an existing image alias."
        },
        {
          "info": {
            "name": "Update the image alias",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "{{baseUrl}}/1.0/images/aliases/:name",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path",
                "description": "Alias name"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Updates the entire image alias configuration."
        },
        {
          "info": {
            "name": "Partially update the image alias",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "{{baseUrl}}/1.0/images/aliases/:name",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path",
                "description": "Alias name"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Updates a subset of the image alias configuration."
        },
        {
          "info": {
            "name": "Delete the image alias",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/1.0/images/aliases/:name",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path",
                "description": "Alias name"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Deletes a specific image alias."
        },
        {
          "info": {
            "name": "Get the public image alias",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/aliases/:name?public",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path",
                "description": "Alias name"
              },
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Gets a specific public image alias.\nThis untrusted endpoint only works for aliases pointing to public images."
        },
        {
          "info": {
            "name": "Get the image aliases",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images/aliases?recursion=1",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Returns a list of image aliases (structs)."
        },
        {
          "info": {
            "name": "Get the public images",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images?public",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              },
              {
                "name": "filter",
                "value": "default",
                "type": "query",
                "description": "Collection filter"
              },
              {
                "name": "all-projects",
                "value": "",
                "type": "query",
                "description": "Retrieve images from all projects"
              }
            ]
          },
          "docs": "Returns a list of publicly available images (URLs)."
        },
        {
          "info": {
            "name": "Add an image",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/1.0/images?public",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              }
            ]
          },
          "docs": "Pushes the data to the target image server.\nThis is meant for server to server communication where a new image entry is\nprepared on the target server and the source server is provided that URL\nand a secret token to push the image content over."
        },
        {
          "info": {
            "name": "Get the public images",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images?public&recursion=1",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              },
              {
                "name": "filter",
                "value": "default",
                "type": "query",
                "description": "Collection filter"
              },
              {
                "name": "all-projects",
                "value": "",
                "type": "query",
                "description": "Retrieve images from all projects"
              }
            ]
          },
          "docs": "Returns a list of publicly available images (structs)."
        },
        {
          "info": {
            "name": "Get the images",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/1.0/images?recursion=1",
            "params": [
              {
                "name": "project",
                "value": "default",
                "type": "query",
                "description": "Project name"
              },
              {
                "name": "filter",
                "value": "default",
                "type": "query",
                "description": "Collection filter"
              },
              {
                "name": "all-projects",
                "value": "default",
                "type": "query",
                "description": "Retrieve images from all projects"
              }
            ]
          },
          "docs": "Returns a list of images (structs)."
        }
      ]
    }
  ],
  "bundled": true
}