DATPAQ Image Processing API
Image resize, compress, convert, crop, and pipeline operations
Image resize, compress, convert, crop, and pipeline operations
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/datpaq-com:datpaq-com-image-processing-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Datpaq Com Image Processing API
version: 1.1.0
contact:
name: Datpaq Support
url: https://datpaq.com
license:
name: Proprietary
description: 'Operations tagged Image Processing across 2 of this provider''s published API definitions: datpaq-com.yaml, datpaq-com-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
security:
- ApiKeyHeader: []
- ApiKeyQuery: []
tags:
- name: Image Processing
description: Image resize, compress, convert, crop, and pipeline operations
paths:
/image-processing/process:
post:
tags:
- Image Processing
operationId: imagePipeline
summary: Run an image through a multi-step operation pipeline
description: Executes an ordered array of image operations in a single request. Recommended over individual endpoints when multiple operations are needed. Supports resize, compress, convert, crop, and metadata.
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- image_url
- operations
properties:
image_url:
type: string
format: uri
example: https://example.com/photo.jpg
operations:
type: array
items:
type: object
required:
- operation
properties:
operation:
type: string
enum:
- resize
- compress
- convert
- crop
- metadata
width:
type: integer
minimum: 1
height:
type: integer
minimum: 1
quality:
type: integer
minimum: 1
maximum: 100
format:
type: string
enum:
- jpeg
- png
- webp
- avif
example:
image_url: https://example.com/photo.jpg
operations:
- type: resize
width: 800
- type: convert
format: webp
responses:
'200':
description: Processed image binary or JSON metadata
content:
image/png:
schema:
type: string
format: binary
image/webp:
schema:
type: string
format: binary
image/jpeg:
schema:
type: string
format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/image-processing/resize:
post:
tags:
- Image Processing
operationId: imageResize
summary: Resize an image to specified dimensions
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- image_url
properties:
image_url:
type: string
format: uri
width:
type: integer
example: 800
height:
type: integer
example: 600
fit:
type: string
enum:
- cover
- contain
- fill
- inside
- outside
default: cover
example:
image_url: https://example.com/photo.jpg
width: 800
height: 600
fit: cover
responses:
'200':
description: Resized image binary
content:
image/png:
schema:
type: string
format: binary
image/webp:
schema:
type: string
format: binary
image/jpeg:
schema:
type: string
format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/image-processing/compress:
post:
tags:
- Image Processing
operationId: imageCompress
summary: Compress an image
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- image_url
properties:
image_url:
type: string
format: uri
quality:
type: integer
minimum: 1
maximum: 100
example: 75
example:
image_url: https://example.com/photo.jpg
quality: 80
responses:
'200':
description: Compressed image binary
content:
image/png:
schema:
type: string
format: binary
image/webp:
schema:
type: string
format: binary
image/jpeg:
schema:
type: string
format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/image-processing/convert:
post:
tags:
- Image Processing
operationId: imageConvert
summary: Convert image to a different format
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- image_url
- format
properties:
image_url:
type: string
format: uri
format:
type: string
enum:
- jpeg
- png
- webp
- avif
example: webp
example:
image_url: https://example.com/photo.jpg
format: webp
responses:
'200':
description: Converted image binary
content:
image/png:
schema:
type: string
format: binary
image/webp:
schema:
type: string
format: binary
image/jpeg:
schema:
type: string
format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/image-processing/crop:
post:
tags:
- Image Processing
operationId: imageCrop
summary: Crop an image to a region
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- image_url
- x
- y
- width
- height
properties:
image_url:
type: string
format: uri
x:
type: integer
minimum: 0
y:
type: integer
minimum: 0
width:
type: integer
minimum: 1
height:
type: integer
minimum: 1
example:
image_url: https://example.com/photo.jpg
left: 0
top: 0
width: 400
height: 400
responses:
'200':
description: Cropped image binary
content:
image/png:
schema:
type: string
format: binary
image/webp:
schema:
type: string
format: binary
image/jpeg:
schema:
type: string
format: binary
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/image-processing/metadata:
post:
tags:
- Image Processing
operationId: imageMetadata
summary: Extract metadata from an image
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- image_url
properties:
image_url:
type: string
format: uri
example:
image_url: https://example.com/photo.jpg
responses:
'200':
description: Image metadata (dimensions, format, EXIF, color profile)
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
success: true
format: jpeg
width: 1920
height: 1080
size: 245760
colorSpace: srgb
hasAlpha: false
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/image-processing/info:
get:
tags:
- Image Processing
operationId: imageProcessingInfo
summary: Get image processing service information
description: Returns supported image operations, formats, and service metadata.
responses:
'200':
description: Image processing service information
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
success: true
operations:
- resize
- compress
- convert
- crop
- metadata
maxFileSize: 10MB
supportedFormats:
- jpeg
- png
- webp
- avif
- heic
- heif
- svg
- gif
- tiff
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
components:
schemas:
ErrorResponse:
type: object
properties:
error:
type: string
description: Human-readable error message
example: Invalid API key
correlationId:
type: string
description: Request tracking identifier for support
example: abc123-def456-789ghi
service:
type: string
description: Service name that produced the error
example: ip-geolocation
GenericSuccess:
type: object
description: Standard success envelope. The data property structure varies by endpoint.
properties:
correlationId:
type: string
description: Request tracking identifier
example: abc123-def456
data:
type: object
description: Response payload (structure varies by endpoint)
cached:
type: boolean
description: Whether the response was served from cache
example: false
responses:
BadRequest:
description: Bad request — missing or invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
RateLimited:
description: Rate limit exceeded — retry after the indicated period
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
ServiceUnavailable:
description: Service temporarily unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
Unauthorized:
description: Unauthorized — missing or invalid API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
securitySchemes:
ApiKeyHeader:
type: apiKey
in: header
name: x-api-key
description: API key passed via x-api-key request header
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: API key passed as api_key query parameter
x-refined-from:
- datpaq-com.yaml
- datpaq-com-openapi.yaml