Incus · Capability

Incus external REST API — instances

Incus external REST API — instances. 54 operations. Lead operation: Get the instances. Self-contained Naftiko capability covering one Incus business surface.

Run with Naftiko Incusinstances

What You Can Do

GET
Instancesget — Get the instances
/v1/1-0/instances
POST
Instancespost — Create a new instance
/v1/1-0/instances
PUT
Instancesput — Bulk instance state update
/v1/1-0/instances
DELETE
Instancedelete — Delete an instance
/v1/1-0/instances/{name}
GET
Instanceget — Get the instance
/v1/1-0/instances/{name}
PATCH
Instancepatch — Partially update the instance
/v1/1-0/instances/{name}
POST
Instancepost — Rename or move/migrate an instance
/v1/1-0/instances/{name}
PUT
Instanceput — Update the instance
/v1/1-0/instances/{name}
GET
Instanceaccess — Get who has access to an instance
/v1/1-0/instances/{name}/access
GET
Instancebackupsget — Get the backups
/v1/1-0/instances/{name}/backups
POST
Instancebackupspost — Create a backup
/v1/1-0/instances/{name}/backups
DELETE
Instancebackupdelete — Delete a backup
/v1/1-0/instances/{name}/backups/{backup}
GET
Instancebackupget — Get the backup
/v1/1-0/instances/{name}/backups/{backup}
POST
Instancebackuppost — Rename a backup
/v1/1-0/instances/{name}/backups/{backup}
GET
Instancebackupexport — Get the raw backup file(s)
/v1/1-0/instances/{name}/backups/{backup}/export
GET
Instancebackupsgetrecursion1 — Get the backups
/v1/1-0/instances/{name}/backups-recursion-1
POST
Instancebitmapspost — Create a bitmap
/v1/1-0/instances/{name}/bitmaps
DELETE
Instanceconsoledelete — Clear the console log
/v1/1-0/instances/{name}/console
GET
Instanceconsoleget — Get console output
/v1/1-0/instances/{name}/console
POST
Instanceconsolepost — Connect to console
/v1/1-0/instances/{name}/console
GET
Instancedebugmemoryget — Get memory debug information of an instance
/v1/1-0/instances/{name}/debug/memory
GET
Instancedebugrepairpost — Trigger a repair action on the instance.
/v1/1-0/instances/{name}/debug/repair
POST
Instanceexecpost — Run a command
/v1/1-0/instances/{name}/exec
DELETE
Instancefilesdelete — Delete a file
/v1/1-0/instances/{name}/files
GET
Instancefilesget — Get a file
/v1/1-0/instances/{name}/files
HEAD
Instancefileshead — Get metadata for a file
/v1/1-0/instances/{name}/files
POST
Instancefilespost — Create or replace a file
/v1/1-0/instances/{name}/files
GET
Instancelogsget — Get the log files
/v1/1-0/instances/{name}/logs
GET
Instanceexecoutputsget — Get the exec record-output files
/v1/1-0/instances/{name}/logs/exec-output
DELETE
Instanceexecoutputdelete — Delete the exec record-output file
/v1/1-0/instances/{name}/logs/exec-output/{filename}
GET
Instanceexecoutputget — Get the exec-output log file
/v1/1-0/instances/{name}/logs/exec-output/{filename}
DELETE
Instancelogdelete — Delete the log file
/v1/1-0/instances/{name}/logs/{filename}
GET
Instancelogget — Get the log file
/v1/1-0/instances/{name}/logs/{filename}
GET
Instancemetadataget — Get the instance image metadata
/v1/1-0/instances/{name}/metadata
PATCH
Instancemetadatapatch — Partially update the image metadata
/v1/1-0/instances/{name}/metadata
PUT
Instancemetadataput — Update the image metadata
/v1/1-0/instances/{name}/metadata
DELETE
Instancemetadatatemplatesdelete — Delete a template file
/v1/1-0/instances/{name}/metadata/templates
GET
Instancemetadatatemplatesget — Get the template file names or a specific
/v1/1-0/instances/{name}/metadata/templates
POST
Instancemetadatatemplatespost — Create or replace a template file
/v1/1-0/instances/{name}/metadata/templates
POST
Instancerebuildpost — Rebuild an instance
/v1/1-0/instances/{name}/rebuild
GET
Instancesftp — Get the instance SFTP connection
/v1/1-0/instances/{name}/sftp
GET
Instancesnapshotsget — Get the snapshots
/v1/1-0/instances/{name}/snapshots
POST
Instancesnapshotspost — Create a snapshot
/v1/1-0/instances/{name}/snapshots
DELETE
Instancesnapshotdelete — Delete a snapshot
/v1/1-0/instances/{name}/snapshots/{snapshot}
GET
Instancesnapshotget — Get the snapshot
/v1/1-0/instances/{name}/snapshots/{snapshot}
PATCH
Instancesnapshotpatch — Partially update snapshot
/v1/1-0/instances/{name}/snapshots/{snapshot}
POST
Instancesnapshotpost — Rename or move/migrate a snapshot
/v1/1-0/instances/{name}/snapshots/{snapshot}
PUT
Instancesnapshotput — Update snapshot
/v1/1-0/instances/{name}/snapshots/{snapshot}
GET
Instancesnapshotsgetrecursion1 — Get the snapshots
/v1/1-0/instances/{name}/snapshots-recursion-1
GET
Instancestateget — Get the runtime state
/v1/1-0/instances/{name}/state
PUT
Instancestateput — Change the state
/v1/1-0/instances/{name}/state
GET
Instancegetrecursion1 — Get the instance
/v1/1-0/instances/name-recursion-1
GET
Instancesgetrecursion1 — Get the instances
/v1/1-0/instances-recursion-1
GET
Instancesgetrecursion2 — Get the instances
/v1/1-0/instances-recursion-2

MCP Tools

get-instances

Get the instances

read-only idempotent
create-new-instance

Create a new instance

bulk-instance-state-update

Bulk instance state update

idempotent
delete-instance

Delete an instance

idempotent
get-instance

Get the instance

read-only idempotent
partially-update-instance

Partially update the instance

idempotent
rename-move-migrate-instance

Rename or move/migrate an instance

update-instance

Update the instance

idempotent
get-who-has-access-instance

Get who has access to an instance

read-only idempotent
get-backups

Get the backups

read-only idempotent
create-backup

Create a backup

delete-backup

Delete a backup

idempotent
get-backup

Get the backup

read-only idempotent
rename-backup

Rename a backup

get-raw-backup-file-s

Get the raw backup file(s)

read-only idempotent
get-backups-2

Get the backups

read-only idempotent
create-bitmap

Create a bitmap

clear-console-log

Clear the console log

idempotent
get-console-output

Get console output

read-only idempotent
connect-console

Connect to console

get-memory-debug-information-instance

Get memory debug information of an instance

read-only idempotent
trigger-repair-action-instance

Trigger a repair action on the instance.

read-only idempotent
run-command

Run a command

delete-file

Delete a file

idempotent
get-file

Get a file

read-only idempotent
get-metadata-file

Get metadata for a file

create-replace-file

Create or replace a file

get-log-files

Get the log files

read-only idempotent
get-exec-record-output-files

Get the exec record-output files

read-only idempotent
delete-exec-record-output-file

Delete the exec record-output file

idempotent
get-exec-output-log-file

Get the exec-output log file

read-only idempotent
delete-log-file

Delete the log file

idempotent
get-log-file

Get the log file

read-only idempotent
get-instance-image-metadata

Get the instance image metadata

read-only idempotent
partially-update-image-metadata

Partially update the image metadata

idempotent
update-image-metadata

Update the image metadata

idempotent
delete-template-file

Delete a template file

idempotent
get-template-file-names-specific

Get the template file names or a specific

read-only idempotent
create-replace-template-file

Create or replace a template file

rebuild-instance

Rebuild an instance

get-instance-sftp-connection

Get the instance SFTP connection

read-only idempotent
get-snapshots

Get the snapshots

read-only idempotent
create-snapshot

Create a snapshot

delete-snapshot

Delete a snapshot

idempotent
get-snapshot

Get the snapshot

read-only idempotent
partially-update-snapshot

Partially update snapshot

idempotent
rename-move-migrate-snapshot

Rename or move/migrate a snapshot

update-snapshot

Update snapshot

idempotent
get-snapshots-2

Get the snapshots

read-only idempotent
get-runtime-state

Get the runtime state

read-only idempotent
change-state

Change the state

idempotent
get-instance-2

Get the instance

read-only idempotent
get-instances-2

Get the instances

read-only idempotent
get-instances-3

Get the instances

read-only idempotent

Capability Spec

incus-instances.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Incus external REST API — instances
  description: 'Incus external REST API — instances. 54 operations. Lead operation: Get the instances. Self-contained Naftiko
    capability covering one Incus business surface.'
  tags:
  - Incus
  - instances
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    INCUS_API_KEY: INCUS_API_KEY
capability:
  consumes:
  - type: http
    namespace: incus-instances
    baseUri: ''
    description: Incus external REST API — instances business capability. Self-contained, no shared references.
    resources:
    - name: 1.0-instances
      path: /1.0/instances
      operations:
      - name: instancesget
        method: GET
        description: Get the instances
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: filter
          in: query
          type: string
          description: Collection filter
        - name: all-projects
          in: query
          type: boolean
          description: Retrieve instances from all projects
      - name: instancespost
        method: POST
        description: Create a new instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: target
          in: query
          type: string
          description: Cluster member
        - name: instance
          in: body
          type: string
          description: Instance request
        - name: raw_backup
          in: body
          type: string
          description: Raw backup file
      - name: instancesput
        method: PUT
        description: Bulk instance state update
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: state
          in: body
          type: string
          description: State
    - name: 1.0-instances-name
      path: /1.0/instances/{name}
      operations:
      - name: instancedelete
        method: DELETE
        description: Delete an instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instanceget
        method: GET
        description: Get the instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancepatch
        method: PATCH
        description: Partially update the instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: instance
          in: body
          type: string
          description: Update request
      - name: instancepost
        method: POST
        description: Rename or move/migrate an instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: migration
          in: body
          type: string
          description: Migration request
      - name: instanceput
        method: PUT
        description: Update the instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: instance
          in: body
          type: string
          description: Update request
    - name: 1.0-instances-name-access
      path: /1.0/instances/{name}/access
      operations:
      - name: instanceaccess
        method: GET
        description: Get who has access to an instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-backups
      path: /1.0/instances/{name}/backups
      operations:
      - name: instancebackupsget
        method: GET
        description: Get the backups
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancebackupspost
        method: POST
        description: Create a backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: backup
          in: body
          type: string
          description: Backup request
    - name: 1.0-instances-name-backups-backup
      path: /1.0/instances/{name}/backups/{backup}
      operations:
      - name: instancebackupdelete
        method: DELETE
        description: Delete a backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: backup
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancebackupget
        method: GET
        description: Get the backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: backup
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancebackuppost
        method: POST
        description: Rename a backup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: backup
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: backup
          in: body
          type: string
          description: Backup rename
    - name: 1.0-instances-name-backups-backup-export
      path: /1.0/instances/{name}/backups/{backup}/export
      operations:
      - name: instancebackupexport
        method: GET
        description: Get the raw backup file(s)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: backup
          in: path
          type: string
          description: Backup name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-backups?recursion=1
      path: /1.0/instances/{name}/backups?recursion=1
      operations:
      - name: instancebackupsgetrecursion1
        method: GET
        description: Get the backups
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-bitmaps
      path: /1.0/instances/{name}/bitmaps
      operations:
      - name: instancebitmapspost
        method: POST
        description: Create a bitmap
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: bitmap
          in: body
          type: string
          description: Bitmap request
    - name: 1.0-instances-name-console
      path: /1.0/instances/{name}/console
      operations:
      - name: instanceconsoledelete
        method: DELETE
        description: Clear the console log
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instanceconsoleget
        method: GET
        description: Get console output
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: type
          in: query
          type: string
          description: Console type
      - name: instanceconsolepost
        method: POST
        description: Connect to console
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: console
          in: body
          type: string
          description: Console request
    - name: 1.0-instances-name-debug-memory
      path: /1.0/instances/{name}/debug/memory
      operations:
      - name: instancedebugmemoryget
        method: GET
        description: Get memory debug information of an instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: format
          in: query
          type: string
          description: Memory dump format
    - name: 1.0-instances-name-debug-repair
      path: /1.0/instances/{name}/debug/repair
      operations:
      - name: instancedebugrepairpost
        method: GET
        description: Trigger a repair action on the instance.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: state
          in: body
          type: string
          description: State
    - name: 1.0-instances-name-exec
      path: /1.0/instances/{name}/exec
      operations:
      - name: instanceexecpost
        method: POST
        description: Run a command
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: exec
          in: body
          type: string
          description: Exec request
    - name: 1.0-instances-name-files
      path: /1.0/instances/{name}/files
      operations:
      - name: instancefilesdelete
        method: DELETE
        description: Delete a file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: path
          in: query
          type: string
          description: Path to the file
        - name: project
          in: query
          type: string
          description: Project name
        - name: X-Incus-force
          in: header
          type: boolean
          description: Perform recursive deletion
      - name: instancefilesget
        method: GET
        description: Get a file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: path
          in: query
          type: string
          description: Path to the file
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancefileshead
        method: HEAD
        description: Get metadata for a file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: path
          in: query
          type: string
          description: Path to the file
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancefilespost
        method: POST
        description: Create or replace a file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: path
          in: query
          type: string
          description: Path to the file
        - name: project
          in: query
          type: string
          description: Project name
        - name: raw_file
          in: body
          type: string
          description: Raw file content
        - name: X-Incus-uid
          in: header
          type: integer
          description: File owner UID
        - name: X-Incus-gid
          in: header
          type: integer
          description: File owner GID
        - name: X-Incus-mode
          in: header
          type: integer
          description: File mode
        - name: X-Incus-type
          in: header
          type: string
          description: Type of file (file, symlink or directory)
        - name: X-Incus-write
          in: header
          type: string
          description: Write mode (overwrite or append)
    - name: 1.0-instances-name-logs
      path: /1.0/instances/{name}/logs
      operations:
      - name: instancelogsget
        method: GET
        description: Get the log files
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-logs-exec-output
      path: /1.0/instances/{name}/logs/exec-output
      operations:
      - name: instanceexecoutputsget
        method: GET
        description: Get the exec record-output files
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-logs-exec-output-filename
      path: /1.0/instances/{name}/logs/exec-output/{filename}
      operations:
      - name: instanceexecoutputdelete
        method: DELETE
        description: Delete the exec record-output file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: filename
          in: path
          type: string
          description: Log file name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instanceexecoutputget
        method: GET
        description: Get the exec-output log file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: filename
          in: path
          type: string
          description: Log file name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-logs-filename
      path: /1.0/instances/{name}/logs/{filename}
      operations:
      - name: instancelogdelete
        method: DELETE
        description: Delete the log file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: filename
          in: path
          type: string
          description: Log file name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancelogget
        method: GET
        description: Get the log file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: filename
          in: path
          type: string
          description: Log file name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-metadata
      path: /1.0/instances/{name}/metadata
      operations:
      - name: instancemetadataget
        method: GET
        description: Get the instance image metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancemetadatapatch
        method: PATCH
        description: Partially update the image metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: metadata
          in: body
          type: string
          description: Image metadata
          required: true
      - name: instancemetadataput
        method: PUT
        description: Update the image metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: metadata
          in: body
          type: string
          description: Image metadata
          required: true
    - name: 1.0-instances-name-metadata-templates
      path: /1.0/instances/{name}/metadata/templates
      operations:
      - name: instancemetadatatemplatesdelete
        method: DELETE
        description: Delete a template file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: path
          in: query
          type: string
          description: Template name
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancemetadatatemplatesget
        method: GET
        description: Get the template file names or a specific
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: path
          in: query
          type: string
          description: Template name
      - name: instancemetadatatemplatespost
        method: POST
        description: Create or replace a template file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: path
          in: query
          type: string
          description: Template name
        - name: project
          in: query
          type: string
          description: Project name
        - name: raw_file
          in: body
          type: string
          description: Raw file content
    - name: 1.0-instances-name-rebuild
      path: /1.0/instances/{name}/rebuild
      operations:
      - name: instancerebuildpost
        method: POST
        description: Rebuild an instance
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: instance
          in: body
          type: string
          description: InstanceRebuild request
          required: true
    - name: 1.0-instances-name-sftp
      path: /1.0/instances/{name}/sftp
      operations:
      - name: instancesftp
        method: GET
        description: Get the instance SFTP connection
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
    - name: 1.0-instances-name-snapshots
      path: /1.0/instances/{name}/snapshots
      operations:
      - name: instancesnapshotsget
        method: GET
        description: Get the snapshots
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancesnapshotspost
        method: POST
        description: Create a snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: snapshot
          in: body
          type: string
          description: Snapshot request
    - name: 1.0-instances-name-snapshots-snapshot
      path: /1.0/instances/{name}/snapshots/{snapshot}
      operations:
      - name: instancesnapshotdelete
        method: DELETE
        description: Delete a snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: snapshot
          in: path
          type: string
          description: Snapshot name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancesnapshotget
        method: GET
        description: Get the snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: snapshot
          in: path
          type: string
          description: Snapshot name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancesnapshotpatch
        method: PATCH
        description: Partially update snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: snapshot
          in: path
          type: string
          description: Snapshot name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: snapshot
          in: body
          type: string
          description: Snapshot update
      - name: instancesnapshotpost
        method: POST
        description: Rename or move/migrate a snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: snapshot
          in: path
          type: string
          description: Snapshot name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: snapshot
          in: body
          type: string
          description: Snapshot migration
      - name: instancesnapshotput
        method: PUT
        description: Update snapshot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: snapshot
          in: path
          type: string
          description: Snapshot name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: snapshot
          in: body
          type: string
          description: Snapshot update
    - name: 1.0-instances-name-snapshots?recursion=1
      path: /1.0/instances/{name}/snapshots?recursion=1
      operations:
      - name: instancesnapshotsgetrecursion1
        method: GET
        description: Get the snapshots
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
    - name: 1.0-instances-name-state
      path: /1.0/instances/{name}/state
      operations:
      - name: instancestateget
        method: GET
        description: Get the runtime state
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: instancestateput
        method: PUT
        description: Change the state
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Instance name
          requ

# --- truncated at 32 KB (75 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/incus/refs/heads/main/capabilities/incus-instances.yaml