apyhub
FILE CONVERSION · IMAGE PROCESSING

HEIC to JPEG Converter

What it does

HEIC to JPEG Converter turns HEIC and HEIF images into downloadable JPEG or PNG files. Send either a file upload or a public image URL, and choose the output filename with the output query parameter.

Use the multipart endpoints when you already have the image in your request body. Use the URL endpoints when the source image is hosted elsewhere and you want the service to fetch it first. The conversion result is delivered either as a binary file download or as a signed URL, depending on the endpoint you call.

This is a practical fit for apps that need to accept iPhone photos and store or serve them in browser-friendly formats. It also helps back-office workflows that normalize incoming images before upload, display, or downstream processing.

The request schemas are simple: image for multipart upload, or url for remote fetches. The responses are equally direct: either the converted image bytes, or a data field containing a signed URL to the converted image.

▣ ENDPOINT 01 / 04
POST
Convert HEIC/HEIF to JPEG or PNG (multipart upload, download file)
https://api.eu.apyverse.com/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/download

QUICKSTART

GUIDE

Quickstart

Convert a HEIC/HEIF image and download the result as a file.

curl -X POST "https://api.eu.apyverse.com/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/download?output=my-image.png" \
  -H "apy-token: $APY_TOKEN" \
  -F "image=@/path/to/image.heic"

What you'll get back

Returns a binary file (string with format: binary) containing the converted image.

(binary file download)
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 file in JPEG or PNG format. The request uploads one binary image file and can optionally include an output query parameter to name the returned file.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoOutput filename for the converted file.

Request Body

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

Response

Returns a binary file download containing the converted image. The response schema is a single binary string, so there is no JSON wrapper or top-level field to read.

ParameterTypeMandatoryDescription
StringYesBinary file content 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 02 / 04
POST
Convert HEIC/HEIF to JPEG or PNG (multipart upload, return signed URL)
https://api.eu.apyverse.com/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/link

QUICKSTART

GUIDE

Quickstart

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

curl -X POST "https://api.eu.apyverse.com/apyhub/convert-heic-heif-to-jpeg-or-png/multi-part/link?output=my-image.png" \
  -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 containing the signed URL of the converted image.

{
  "data": "https://example.com/converted-image.png"
}
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 file and returns a signed URL for the converted image. The output filename can be requested with the output query parameter.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoOutput filename for the converted image.

Request Body

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

Response

Returns a JSON object with a data string field containing 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)
https://api.eu.apyverse.com/apyhub/convert-heic-heif-to-jpeg-or-png/url/download

QUICKSTART

GUIDE

Quickstart

Convert a HEIC/HEIF image from a public URL and download the result.

curl -X POST "https://api.eu.apyverse.com/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 binary file data (string with format: binary) for the converted image.

(binary file 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

Downloads a HEIC/HEIF image from a public URL and converts it to JPEG or PNG. The converted file is returned as binary output.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoName of the output file. Example: my-image.png.

Request Body

ParameterTypeMandatoryDescription
urlStringYesPublic URL of the HEIC/HEIF image to convert. Format: URI.

Response

Returns a binary file containing the converted image. The response schema is a binary string.

ParameterTypeMandatoryDescription
-StringYesBinary 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)
https://api.eu.apyverse.com/apyhub/convert-heic-heif-to-jpeg-or-png/url/link

QUICKSTART

GUIDE

Quickstart

Convert a HEIC/HEIF image from a public URL and return a signed download link.

curl -X POST "https://api.eu.apyverse.com/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 containing the 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 file and returns a signed URL for the converted image.

Query Parameter(s)

AttributeTypeMandatoryDescription
outputStringNoOutput filename for the converted image.

Request Body

ParameterTypeMandatoryDescription
urlStringYesPublic URL of the HEIC/HEIF image to convert. Must be a URI.

Response

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

ParameterTypeMandatoryDescription
dataStringYesSigned URL of the converted image. Must be a 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.