API Snap · Capability
API Snap — Images
API Snap — Images. 3 operations. Lead operation: Generate Placeholder Image. Self-contained Naftiko capability covering one Api Snap business surface.
What You Can Do
GET
Generateplaceholderimage
— Generate Placeholder Image
/v1/api/placeholder
GET
Generateqrcode
— Generate QR Code
/v1/api/qr
POST
Resizeimage
— Resize and Convert Images
/v1/api/resize
MCP Tools
generate-placeholder-image
Generate Placeholder Image
read-only
idempotent
generate-qr-code
Generate QR Code
read-only
idempotent
resize-and-convert-images
Resize and Convert Images
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: API Snap — Images
description: 'API Snap — Images. 3 operations. Lead operation: Generate Placeholder Image. Self-contained Naftiko capability
covering one Api Snap business surface.'
tags:
- Api Snap
- Images
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
API_SNAP_API_KEY: API_SNAP_API_KEY
capability:
consumes:
- type: http
namespace: api-snap-images
baseUri: https://api-snap.com
description: API Snap — Images business capability. Self-contained, no shared references.
resources:
- name: api-placeholder
path: /api/placeholder
operations:
- name: generateplaceholderimage
method: GET
description: Generate Placeholder Image
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: w
in: query
type: integer
description: Image width in pixels (1–2000).
- name: h
in: query
type: integer
description: Image height in pixels (1–2000).
- name: bg
in: query
type: string
description: Background color as a hex string without the `#` prefix.
- name: fg
in: query
type: string
description: Text/foreground color as a hex string without the `#` prefix.
- name: text
in: query
type: string
description: Label text to display on the image. Defaults to the dimensions (e.g. `300x200`).
- name: api-qr
path: /api/qr
operations:
- name: generateqrcode
method: GET
description: Generate QR Code
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: data
in: query
type: string
description: The text or URL to encode in the QR code. Also accepted as `url`.
required: true
- name: size
in: query
type: integer
description: Width/height of the QR code in pixels (max 1000).
- name: format
in: query
type: string
description: Output format.
- name: dark
in: query
type: string
description: Hex color for dark (foreground) modules.
- name: light
in: query
type: string
description: Hex color for light (background) modules.
- name: api-resize
path: /api/resize
operations:
- name: resizeimage
method: POST
description: Resize and Convert Images
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: bearer
token: '{{env.API_SNAP_API_KEY}}'
exposes:
- type: rest
namespace: api-snap-images-rest
port: 8080
description: REST adapter for API Snap — Images. One Spectral-compliant resource per consumed operation, prefixed with
/v1.
resources:
- path: /v1/api/placeholder
name: api-placeholder
description: REST surface for api-placeholder.
operations:
- method: GET
name: generateplaceholderimage
description: Generate Placeholder Image
call: api-snap-images.generateplaceholderimage
with:
w: rest.w
h: rest.h
bg: rest.bg
fg: rest.fg
text: rest.text
outputParameters:
- type: object
mapping: $.
- path: /v1/api/qr
name: api-qr
description: REST surface for api-qr.
operations:
- method: GET
name: generateqrcode
description: Generate QR Code
call: api-snap-images.generateqrcode
with:
data: rest.data
size: rest.size
format: rest.format
dark: rest.dark
light: rest.light
outputParameters:
- type: object
mapping: $.
- path: /v1/api/resize
name: api-resize
description: REST surface for api-resize.
operations:
- method: POST
name: resizeimage
description: Resize and Convert Images
call: api-snap-images.resizeimage
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: api-snap-images-mcp
port: 9090
transport: http
description: MCP adapter for API Snap — Images. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: generate-placeholder-image
description: Generate Placeholder Image
hints:
readOnly: true
destructive: false
idempotent: true
call: api-snap-images.generateplaceholderimage
with:
w: tools.w
h: tools.h
bg: tools.bg
fg: tools.fg
text: tools.text
outputParameters:
- type: object
mapping: $.
- name: generate-qr-code
description: Generate QR Code
hints:
readOnly: true
destructive: false
idempotent: true
call: api-snap-images.generateqrcode
with:
data: tools.data
size: tools.size
format: tools.format
dark: tools.dark
light: tools.light
outputParameters:
- type: object
mapping: $.
- name: resize-and-convert-images
description: Resize and Convert Images
hints:
readOnly: false
destructive: false
idempotent: false
call: api-snap-images.resizeimage
with:
body: tools.body
outputParameters:
- type: object
mapping: $.