apyhub
FILE CONVERSION · FILE MANIPULATION

Convert HEIC to JPEG/PNG API

Hosted on ApyHub

What it does

HEIC to JPEG Converter turns HEIC and HEIF images into JPEG or PNG files. Send a file upload or a public image URL, and get back either the converted file as binary download or a signed URL to the converted image.

Use the multipart endpoints when you already have the image in your app, or use the URL endpoints when the source file lives elsewhere and you want ApyHub to fetch it first. In both cases, you can pass an output filename in the query string, such as my-image.png, to control the returned file name.

This is useful when you need to handle photos from iPhones or other HEIC-producing devices in systems that only accept JPEG or PNG. Common uses include image upload pipelines, asset ingestion, CMS imports, and user-facing download flows that need a predictable output format.

The service returns either a binary image download or a JSON response with data, a signed URL for the converted image, depending on the endpoint you choose.

▣ ENDPOINT 01 / 04
POST
Convert HEIC/HEIF to JPEG or PNG (multipart upload, download file)
http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/download
QUICKSTARTGUIDE

Quickstart

Upload a HEIC/HEIF image to convert it and receive the converted file in response.

curl -X POST "http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/download" \
  -H "apy-token: $APY_TOKEN" \
  -F "image=@/path/to/image.heic"

What you'll get back

Returns a binary file not a JSON object.

TRY ITLIVE · 300 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*
HEIC/HEIF file to convert.

About this endpoint

What it does

Converts an uploaded HEIC/HEIF image to a downloadable JPEG or PNG file. The converted file is returned as binary content.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoOutput filename for the converted image.

Request Body

ParameterTypeMandatoryDescription
imageStringYesHEIC/HEIF file to convert. Binary file upload.

Response

Returns a binary file response containing the converted image. The response schema is a single binary string, so there is no JSON object wrapper or named JSON fields to document.

Query parameters

Name
Type
Description
outputOPTIONAL
string

Body

Name
Type
Description
bodyREQUIRED
object

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
Convert HEIC/HEIF to JPEG or PNG (multipart upload, return signed URL)
http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/link
QUICKSTARTGUIDE

Quickstart

Upload a single HEIC/HEIF image and get back a signed URL for the converted file.

curl -X POST "http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/link" \
  -H "apy-token: $APY_TOKEN" \
  -F "image=@/path/to/image.heic"

What you'll get back

Returns a JSON object with a data string field — a signed URL for the converted image.

{
  "data": "https://..."
}
TRY ITLIVE · 300 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*
HEIC/HEIF file to convert.

About this endpoint

What it does

Uploads a HEIC/HEIF image as multipart form data and returns a signed URL pointing to the converted image. The output format can be influenced with the output query parameter.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoOutput file name or path for the converted image. The schema shows an example value of my-image.png.

Request Body

ParameterTypeMandatoryDescription
imageStringYesHEIC/HEIF file to convert. Binary file upload.

Response

Returns a JSON object with a data string field containing a URI. This is the signed URL of the converted image.

ParameterTypeMandatoryDescription
dataStringYesSigned URL of the converted image.

Query parameters

Name
Type
Description
outputOPTIONAL
string

Body

Name
Type
Description
bodyREQUIRED
object

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

▣ ENDPOINT 03 / 04
POST
Convert HEIC/HEIF to JPEG or PNG (fetch by URL, download file)
http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/url/download
QUICKSTARTGUIDE

Quickstart

Convert a public HEIC/HEIF image by sending its URL in the JSON body.

curl -X POST "http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/url/download" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.heic"}'

What you'll get back

Returns a binary file response which is the converted image content.

TRY ITLIVE · 300 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*
Public URL of a HEIC/HEIF image.
URL of the HEIC/HEIF image to convert.

About this endpoint

What it does

Converts a HEIC/HEIF image fetched from a public URL into a downloadable JPEG or PNG file. The request body supplies the source image URL, and the response is a binary file stream.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoOutput filename for the converted file.

Request Body

ParameterTypeMandatoryDescription
urlStringYesURL of the HEIC/HEIF image to convert. Must be a valid URI.

Response

Returns a binary response body containing the converted image file.

Query parameters

Name
Type
Description
outputOPTIONAL
string

Body

Name
Type
Description
bodyREQUIRED
object
Public URL of a HEIC/HEIF image.
▣ ENDPOINT 04 / 04
POST
Convert HEIC/HEIF to JPEG or PNG (fetch by URL, return signed URL)
http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/url/link
QUICKSTARTGUIDE

Quickstart

Convert a HEIC/HEIF image from a public URL and get back a signed URL for the converted file.

curl -X POST "http://localhost:8080/apyhub/convert-heic-heif-to-jpeg-or-png/url/link" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.heic"}'

What you'll get back

Returns a JSON object with a data string field — a signed URL of the converted image.

{
  "data": "https://..."
}
TRY ITLIVE · 300 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*
Public URL of a HEIC/HEIF image.
URL of the HEIC/HEIF image to convert.

About this endpoint

What it does

Converts a HEIC/HEIF image fetched from a public URL into a JPEG or PNG and returns a signed URL for the converted file.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoOutput filename for the converted image. Example: my-image.png.

Request Body

ParameterTypeMandatoryDescription
urlStringYesURL of the HEIC/HEIF image to convert. Must be a valid URI.

Response

Returns a JSON object with a data string field — a signed URL pointing to the converted image.

ParameterTypeMandatoryDescription
dataStringYesSigned URL of the converted image. Must be a valid URI.

Query parameters

Name
Type
Description
outputOPTIONAL
string

Body

Name
Type
Description
bodyREQUIRED
object
Public URL of a HEIC/HEIF image.
▣ 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.