Online Upscaler

You can get started quickly and easily using our API on RapidAPI.


Quick Start

In general, images are processed by submitting a request containing a base64 encoded image or the url of an image. Aisthetic then processes the image and returns a Base64 encoded response. Please visit our docs for additional information.

Uploading Images - Express.js example'/upload', (req,res) => {
  //Get your uploaded file from a form. This is using express-fileupload.
  let image = req.files.image;
  //Convert your image to base64 encoding
  let encodedImage = Buffer.from("base64")
  //Replace characters for a url-friendly encoded image
  let urlEncodedImage = encodedImage.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/g, '');
  //Set the amount the image should be upscaled (2, 4, or 8)
  let scale = 4

  //Configure the post request using unirest
  let unirest = require("unirest");
  let request = unirest("POST", """);

    "x-rapidapi-host": "",
    "x-rapidapi-key": "Your RapidApi Key",
    "content-type": "application/x-www-form-urlencoded"

    "scale": scale,
    "b64image": urlEncodedImage

  request.end((response) => {
    if (response.error) {console.log(response.error)}
Response - Client-side Javascript or via backend Express.js
//within API request callback
callback (response) {
  //parse JSON from response
  var imageData = JSON.parse(response).body.replace(/-/g, '\+').replace(/_/g, '\/')
  //if frontend: 
    //re-insert characters removed during encoding
    var imageSrc = 'data:image/png;base64, ' + imageData;
    //Set as the "src" for an image tag, a user will then be able to download the image. 
    document.getElementById("image").src = imageSrc  

  //or if backend use:  
    //if storing locally, use buffer to convert base64 to binary
    let binaryImage = Buffer.from(imageData, 'base64')
    //if storing in the cloud, use your cloud provider's api to upload the data in the format required.
Python GET Example
# formulate the request
  url = ""
  querystring = {"url":"","scale":"2"}
  headers = {
    'x-rapidapi-host': "",
    'x-rapidapi-key': "your-API-key-here"

  # send the request 
  response = requests.request("GET", url, headers=headers, params=querystring)

  # show the response image
  response_data = json.loads(json.loads(response.text))["body"]
Python POST Example
# b64 encode jpg file in a web-safe manner
with open("/my_images/filename.jpg", "rb") as image_file:  
  img_str = base64.urlsafe_b64encode(

  # formulate the request
  payload = "scale=2&b64image={}".format(img_str)
  url = ""
  headers = {
      'x-rapidapi-host': "",
      'x-rapidapi-key': "your-API-key-here",
      'content-type': "application/x-www-form-urlencoded"

  # send the request
  response = requests.request("POST", url, data=payload, headers=headers)

  # view the response image
  response_data = json.loads(json.loads(response.text))["body"]

Get Started with our API

Learn more on RapidAPI

Connect on RapidAPI