Scaleway · Capability
Instance API — Images
Instance API — Images. 6 operations. Lead operation: List Instance images. Self-contained Naftiko capability covering one Scaleway business surface.
What You Can Do
GET
Listimages
— List Instance images
/v1/instance/v1/zones/{zone}/images
POST
Createimage
— Create an Instance image
/v1/instance/v1/zones/{zone}/images
PUT
Setimage
— Update image
/v1/instance/v1/zones/{zone}/images/{id}
GET
Getimage
— Get an Instance image
/v1/instance/v1/zones/{zone}/images/{image-id}
PATCH
Updateimage
— Update image
/v1/instance/v1/zones/{zone}/images/{image-id}
DELETE
Deleteimage
— Delete an Instance image
/v1/instance/v1/zones/{zone}/images/{image-id}
MCP Tools
list-instance-images
List Instance images
read-only
idempotent
create-instance-image
Create an Instance image
update-image
Update image
idempotent
get-instance-image
Get an Instance image
read-only
idempotent
update-image-2
Update image
idempotent
delete-instance-image
Delete an Instance image
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Instance API — Images
description: 'Instance API — Images. 6 operations. Lead operation: List Instance images. Self-contained Naftiko capability
covering one Scaleway business surface.'
tags:
- Scaleway
- Images
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SCALEWAY_API_KEY: SCALEWAY_API_KEY
capability:
consumes:
- type: http
namespace: instance-images
baseUri: https://api.scaleway.com
description: Instance API — Images business capability. Self-contained, no shared references.
resources:
- name: instance-v1-zones-zone-images
path: /instance/v1/zones/{zone}/images
operations:
- name: listimages
method: GET
description: List Instance images
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: zone
in: path
type: string
description: The zone you want to target
required: true
- name: organization
in: query
type: string
- name: per_page
in: query
type: integer
- name: page
in: query
type: string
- name: name
in: query
type: string
- name: public
in: query
type: string
- name: arch
in: query
type: string
- name: project
in: query
type: string
- name: tags
in: query
type: string
- name: createimage
method: POST
description: Create an Instance image
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: zone
in: path
type: string
description: The zone you want to target
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: instance-v1-zones-zone-images-id
path: /instance/v1/zones/{zone}/images/{id}
operations:
- name: setimage
method: PUT
description: Update image
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: zone
in: path
type: string
description: The zone you want to target
required: true
- name: id
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: instance-v1-zones-zone-images-image_id
path: /instance/v1/zones/{zone}/images/{image_id}
operations:
- name: getimage
method: GET
description: Get an Instance image
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: zone
in: path
type: string
description: The zone you want to target
required: true
- name: image_id
in: path
type: string
description: UUID of the image you want to get.
required: true
- name: updateimage
method: PATCH
description: Update image
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: zone
in: path
type: string
description: The zone you want to target
required: true
- name: image_id
in: path
type: string
description: UUID of the image. (UUID format)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteimage
method: DELETE
description: Delete an Instance image
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: zone
in: path
type: string
description: The zone you want to target
required: true
- name: image_id
in: path
type: string
description: UUID of the image you want to delete.
required: true
authentication:
type: apikey
key: X-Auth-Token
value: '{{env.SCALEWAY_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: instance-images-rest
port: 8080
description: REST adapter for Instance API — Images. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/instance/v1/zones/{zone}/images
name: instance-v1-zones-zone-images
description: REST surface for instance-v1-zones-zone-images.
operations:
- method: GET
name: listimages
description: List Instance images
call: instance-images.listimages
with:
zone: rest.zone
organization: rest.organization
per_page: rest.per_page
page: rest.page
name: rest.name
public: rest.public
arch: rest.arch
project: rest.project
tags: rest.tags
outputParameters:
- type: object
mapping: $.
- method: POST
name: createimage
description: Create an Instance image
call: instance-images.createimage
with:
zone: rest.zone
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/instance/v1/zones/{zone}/images/{id}
name: instance-v1-zones-zone-images-id
description: REST surface for instance-v1-zones-zone-images-id.
operations:
- method: PUT
name: setimage
description: Update image
call: instance-images.setimage
with:
zone: rest.zone
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/instance/v1/zones/{zone}/images/{image-id}
name: instance-v1-zones-zone-images-image-id
description: REST surface for instance-v1-zones-zone-images-image_id.
operations:
- method: GET
name: getimage
description: Get an Instance image
call: instance-images.getimage
with:
zone: rest.zone
image_id: rest.image_id
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: updateimage
description: Update image
call: instance-images.updateimage
with:
zone: rest.zone
image_id: rest.image_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteimage
description: Delete an Instance image
call: instance-images.deleteimage
with:
zone: rest.zone
image_id: rest.image_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: instance-images-mcp
port: 9090
transport: http
description: MCP adapter for Instance API — Images. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: list-instance-images
description: List Instance images
hints:
readOnly: true
destructive: false
idempotent: true
call: instance-images.listimages
with:
zone: tools.zone
organization: tools.organization
per_page: tools.per_page
page: tools.page
name: tools.name
public: tools.public
arch: tools.arch
project: tools.project
tags: tools.tags
outputParameters:
- type: object
mapping: $.
- name: create-instance-image
description: Create an Instance image
hints:
readOnly: false
destructive: false
idempotent: false
call: instance-images.createimage
with:
zone: tools.zone
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: update-image
description: Update image
hints:
readOnly: false
destructive: false
idempotent: true
call: instance-images.setimage
with:
zone: tools.zone
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-instance-image
description: Get an Instance image
hints:
readOnly: true
destructive: false
idempotent: true
call: instance-images.getimage
with:
zone: tools.zone
image_id: tools.image_id
outputParameters:
- type: object
mapping: $.
- name: update-image-2
description: Update image
hints:
readOnly: false
destructive: false
idempotent: true
call: instance-images.updateimage
with:
zone: tools.zone
image_id: tools.image_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-instance-image
description: Delete an Instance image
hints:
readOnly: false
destructive: true
idempotent: true
call: instance-images.deleteimage
with:
zone: tools.zone
image_id: tools.image_id
outputParameters:
- type: object
mapping: $.