apyhub
Back
▣ FILE MANIPULATION · IMAGE PROCESSING

Image Filters API

Hosted on ApyHub

What it does

Image Filter lets you apply a fixed set of transformations to an image and return the result as a file or a signed URL. Send either a binary image upload or an image url, choose a filter, and optionally set output and preserve_format.

Use it for common image adjustments like rotate_45, rotate_90, rotate_135, rotate_180, rotate_225, rotate_270, rotate_315, maximum, minimum, brightness_decrease, brightness_increase, gaussian_blur, flip_vertical, flip_horizontal, or gamma_0.5. The service supports PNG, JPEG, JPG, BMP, TIFF, GIF, and WEBP when you fetch from a URL.

Choose the multipart endpoints when you already have the image file in hand. Use the URL-based endpoints when the image is hosted elsewhere and accessible to ApyHub services. Depending on the endpoint you call, the response is either binary image data or a data field containing a URI.

Image Filter is a good fit for product photo cleanup, simple creative effects, thumbnail preparation, and automated image pipelines where you need deterministic transforms without building them yourself.

▣ ENDPOINT 01 / 04
POST
Apply filter (multipart, signed URL)
https://api.eu.apyhub.com/apyhub/apply-filter/multi-part/link

QUICKSTART

GUIDE

Quickstart

Upload an image and apply the selected filter to get back a generated file URL.

curl -X POST "https://api.eu.apyhub.com/apyhub/apply-filter/multi-part/link?filter=gaussian_blur" \
  -H "apy-token: $APY_TOKEN" \
  -F "image=@/path/to/image.jpg"

What you'll get back

Returns a JSON object with a data string field containing a URI to the processed file.

{
  "data": "https://example.com/processed-image.jpg"
}
TRY ITLIVE · 30 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*

About this endpoint

What it does

Applies a filter to an uploaded image and returns a JSON object containing a URI in data. The image is sent as multipart form data, while the filter is selected via a query parameter.

Query Parameter(s)

AttributeTypeDescription
filterENUMFilter to apply. Allowed values: rotate_45, rotate_90, rotate_135, rotate_180, rotate_225, rotate_270, rotate_315, maximum, minimum, brightness_decrease, brightness_increase, gaussian_blur, flip_vertical, flip_horizontal, gamma_0.5.
outputStringOutput identifier.
preserve_formatBooleanPreserve the original image format when processing.

Request Body

ParameterTypeDescription
imageBinaryImage file to process, sent as binary data.

Response

Returns a JSON object with a data string field formatted as a URI. The response body is an object wrapper with a single data property containing the result location.

ParameterTypeDescription
dataStringURI of the processed output.

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ ENDPOINT 02 / 04
POST
Apply filter (fetch URL, download)
https://api.eu.apyhub.com/apyhub/apply-filter/url/download

QUICKSTART

GUIDE

Quickstart

Download an image from a URL and apply the selected filter.

curl -X POST "https://api.eu.apyhub.com/apyhub/apply-filter/url/download?filter=gaussian_blur" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.jpg"}'

What you'll get back

Returns the filtered file as binary data (string with format: binary).

binary file data
TRY ITLIVE · 30 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
A url of the image that is accessible by ApyHub services. Supported formats are png, jpeg, jpg, bmp, tiff, gif, or webp. If the provided URL does not include a protocol (e.g., http:// or https://), our system will automatically include https:// to ensure proper processing of the request.

About this endpoint

What it does

Fetches an image from a URL and applies the selected filter, then returns the processed file as binary data.

Query Parameter(s)

AttributeTypeDescription
filterENUMImage filter to apply. Allowed values: rotate_45, rotate_90, rotate_135, rotate_180, rotate_225, rotate_270, rotate_315, maximum, minimum, brightness_decrease, brightness_increase, gaussian_blur, flip_vertical, flip_horizontal, gamma_0.5.
outputStringOutput name.
preserve_formatBooleanWhether to preserve the original image format.

Request Body

ParameterTypeDescription
urlStringURL of the image to fetch. Must be a URI. Supported formats are png, jpeg, jpg, bmp, tiff, gif, or webp. If the URL does not include a protocol, https:// is automatically added.

Response

Returns binary file content as a raw string with format: binary.

▣ ENDPOINT 03 / 04
POST
Apply filter (fetch URL, signed URL)
https://api.eu.apyhub.com/apyhub/apply-filter/url/link

QUICKSTART

GUIDE

Quickstart

Convert an image at a URL using the selected filter.

curl -X POST "https://api.eu.apyhub.com/apyhub/apply-filter/url/link?filter=gaussian_blur" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.jpg"}'

What you'll get back

Returns a JSON object with a data string field containing a URI to the processed output.

{
  "data": "https://..."
}
TRY ITLIVE · 30 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
A url of the image that is accessible by ApyHub services. Supported formats are png, jpeg, jpg, bmp, tiff, gif, or webp. If the provided URL does not include a protocol (e.g., http:// or https://), our system will automatically include https:// to ensure proper processing of the request.

About this endpoint

What it does

Applies an image filter to the file at the provided URL and returns a JSON object containing a data URI string for the resulting file.

Query Parameter(s)

AttributeTypeDescription
filterENUMImage filter to apply. Allowed values: rotate_45, rotate_90, rotate_135, rotate_180, rotate_225, rotate_270, rotate_315, maximum, minimum, brightness_decrease, brightness_increase, gaussian_blur, flip_vertical, flip_horizontal, gamma_0.5.
outputStringOutput name. Example value: my-invite.
preserve_formatBooleanWhen true, preserves the original file format.

Request Body

ParameterTypeDescription
urlStringA URL of the image accessible by ApyHub services. Supported formats are png, jpeg, jpg, bmp, tiff, gif, or webp. If the URL does not include a protocol, https:// is added automatically. Format: URI. Example: https://assets.apyhub.com/samples/sample.jpg.

Response

Returns a JSON object with a data string field containing a URI for the processed output.

ParameterTypeDescription
dataStringURI of the resulting file. Format: URI.
▣ ENDPOINT 04 / 04
POST
Apply filter (multipart, download)
https://api.eu.apyhub.com/apyhub/apply-filter/multi-part/download

QUICKSTART

GUIDE

Quickstart

Upload an image and choose a filter to download the processed file.

curl -X POST "https://api.eu.apyhub.com/apyhub/apply-filter/multi-part/download?filter=gaussian_blur" \
  -H "apy-token: $APY_TOKEN" \
  -F "image=@/path/to/image.jpg"

What you'll get back

Returns a binary file (string with format: binary) as the response body.

TRY ITLIVE · 30 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*

About this endpoint

What it does

Applies a filter to an uploaded image and returns the transformed file as a binary download. The filter is selected with the filter query parameter, and the input image is sent in the request body.

Query Parameter(s)

AttributeTypeDescription
filterENUMAllowed values: rotate_45, rotate_90, rotate_135, rotate_180, rotate_225, rotate_270, rotate_315, maximum, minimum, brightness_decrease, brightness_increase, gaussian_blur, flip_vertical, flip_horizontal, gamma_0.5
outputStringExample: my-invite
preserve_formatBooleanBoolean flag.

Request Body

ParameterTypeDescription
imageBinaryBinary image file to process.

Response

Returns a binary file download, represented by a top-level string with binary format.

ParameterTypeDescription
valueStringBinary file content.

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.