IM.GE API documentation

🖼 API Version 1.1

IM.GE API allows users to upload pictures to their account with custom parameters.


Our API works with an user key which is available for each user at and we can also provide guest API key on request. You can email us for guest API key by emailing us to and let us know why you need guest API instead of user API.

Request Method

API calls can be done using the POST or GET request methods but GET request are limited by the maximum allowed length.

👉 So, POST request method is **recommended**.

Request URL

Find key in your account settings


IM.GE API supports header authorizaion by passing the X-API-Key header with an API Key.

X-API-Key: your_key


Required Parameters

Name Description
source A image URL or a base64 encoded image string. Also supports FILES["source"].

Optional Parameters

Name Description
title Image title
description Image description.
album_id Image album id, must be owned by the user (encoded string)
category_id Category id (integer)
width Target resize width (automatic height)
expiration Expiration time to auto-delete the image
nsfw Not safe for work flag (integer 0,1)
format Return format, values json, redirect, txt

Expiration Table

Following values can be used for expiration parameter.

Value Expires after
PT5M 5 minutes
PT15M 15 minutes
PT30M 30 minutes
PT1H 1 hour
PT3H 3 hours
PT6H 6 hours
PT12H 12 hours
PT1D 1 day
PT12D 2 days
PT3D 3 days
PT4D 4 days
PT5D 5 days
PT6D 6 days
PT1W 1 week
PT2W 2 weeks
PT3W 3 weeks
PT1M 1 month
PT2M 2 months
PT3M 3 months
PT4M 4 months
PT5M 5 months
PT6M 6 months
PT1Y 1 year

Compatibility with ShareX

IM.GE supports ShareX. You can find detailed documentation of ShareX configuration here.

Compatibility with ImgBB API

Our API is compatible with all existing ImgBB API clients. You just need to use IM.GE API key instead of ImgBB's.

Example Call


                    curl --location '' \
                    --header 'X-API-Key: chv_EfsF_89c2404e38eac3964_long_key' \
                    --form 'source=@"/path/to/image/image.ext"'

API Response

API responses will vary depending on the format parameter:

Format Output
json Image upload info in JSON formt (default)
txt Image direct URL in text/plain format
redirect Redirects to the image viewer URL

When using JSON the response output will contain the status_txt and status_code properties.

Example Response (JSON)

                    "status_code": 200,
                    "success": {
                        "message": "image uploaded",
                        "code": 200
                    "image": {
                        "name": "image",
                        "extension": "ext",
                        "size": 53237,
                        "width": 1151,
                        "height": 898,
                        "date": "2014-06-04 15:32:33",
                        "date_gmt": "2014-06-04 19:32:33",
                        "storage_id": null,
                        "description": null,
                        "nsfw": "0",
                        "md5": "c684350d722c956c362ab70299735830",
                        "storage": "datefolder",
                        "original_filename": "image.ext",
                        "original_exifdata": null,
                        "views": "0",
                        "id_encoded": "image_id",
                        "filename": "image.ext",
                        "ratio": 1.2817371937639,
                        "size_formatted": "52 KB",
                        "mime": "image/ext",
                        "bits": 8,
                        "channels": null,
                        "url": "",
                        "url_viewer": "",
                        "thumb": {
                            "filename": "",
                            "name": "",
                            "width": 160,
                            "height": 160,
                            "ratio": 1,
                            "size": 17848,
                            "size_formatted": "17.4 KB",
                            "mime": "image/ext",
                            "extension": "ext",
                            "bits": 8,
                            "channels": null,
                            "url": ""
                        "medium": {
                            "filename": "",
                            "name": "",
                            "width": 500,
                            "height": 390,
                            "ratio": 1.2820512820513,
                            "size": 104448,
                            "size_formatted": "102 KB",
                            "mime": "image/ext",
                            "extension": "ext",
                            "bits": 8,
                            "channels": null,
                            "url": ""
                        "views_label": "views",
                        "display_url": "",
                        "how_long_ago": "moments ago"
                    "status_txt": "OK"