Resize Image

Resize Image

Data Generator Image Generator Credits / request: 5

Resizes images to the desired width and height.

POST https://api.apikodu.com/api/v1/imagegenerator/resize
Documentation
Overview

Resizes an image.

Authentication

Every request requires the x-api-key header. Credits used and remaining quota are returned in response headers (x-api-credits-used, x-api-remaining-credits, x-rate-limit-*).

Request
POST https://api.apikodu.com/api/v1/imagegenerator/resize
JSON body.
Parameters
Name Type Required Default Options Description
imageBase64 string * Required — — Source image.
width integer Optional — — Target width (px).
height integer Optional — — Target height (px).
resizeMode string Optional Dynamic Dynamic Constant InsideFixed Dynamic: keep ratio and fit. Constant: stretch to exact size. InsideFixed: fit and center on a fixed canvas.
backgroundColor string Optional — — InsideFixed canvas fill (hex).
outputFormat string Optional — png jpeg webp Empty → png.
quality integer Optional 90 — JPEG/WebP quality 1–100.
Response
Name Type Description
downloadUrl string Signed download URL. Becomes invalid after expires.
format string Output format: png, jpeg or webp.
width integer Output width in pixels.
height integer Output height in pixels.
sizeBytes integer Output file size in bytes.
expires number Unix epoch expiry of the download URL (seconds).
Errors
HTTP code Description
400 -204 Image missing, invalid base64, empty, over size/resolution limit, or unsupported format (png/jpeg/webp). Resize: width/height missing, or both required for Constant/InsideFixed.
400 -206 outputFormat is not png, jpeg, jpg or webp.
400 -213 resizeMode is not Dynamic, Constant or InsideFixed.
500 -207 Output could not be stored.
500 -208 Download URL could not be created.
401 -100 x-api-key is missing, empty, malformed, inactive, banned, expired, IP-restricted, or not allowed for this API.
429 -221 Per-minute request limit exceeded. Response headers: x-rate-limit-limit, x-rate-limit-remaining, x-rate-limit-reset.
429 — Package credit quota cannot cover this request. Body may be { error, limit, currentUsage, requestCost } (no code field).
500 -1 Unexpected server error. message is a generic error text without technical details.
Notes
  • Success body is { data: { ... } }. Error body is { code, message }. code is an ApiResponseCode enum value (negative integer).
  • At least one of width or height is required.

Sample response

{
  "data": {
    "downloadUrl": "https://files.erseapi.com/images/sample/output.png?X-Amz-Expires=86400",
    "format": "png",
    "width": 800,
    "height": 600,
    "sizeBytes": 48210,
    "expires": 1771891200
  }
}

Code samples

  
      const response = await fetch('https://api.apikodu.com/api/v1/imagegenerator/resize', {
        method: 'POST',
        headers: {
          'Content-Type': 'application/json',
          'x-api-key': 'YOUR_API_KEY'
        },
        body: JSON.stringify({
          name: 'example',
          value: 123
        })
      });

      const data = await response.json();
      console.log(data);
  
  
      import requests

      headers = {
          'Content-Type': 'application/json',
          'x-api-key': 'YOUR_API_KEY'
      }

      payload = {
          'name': 'example',
          'value': 123
      }

      response = requests.post('https://api.apikodu.com/api/v1/imagegenerator/resize', headers=headers, json=payload)
      data = response.json()
      print(data)
  
  
      using var client = new HttpClient();
      client.DefaultRequestHeaders.Add("x-api-key", "YOUR_API_KEY");

      var payload = new { name = "example", value = 123 };
      var json = JsonSerializer.Serialize(payload);
      var content = new StringContent(json, Encoding.UTF8, "application/json");

      var response = await client.PostAsync("https://api.apikodu.com/api/v1/imagegenerator/resize", content);
      response.EnsureSuccessStatusCode();

      var data = await response.Content.ReadAsStringAsync();
      Console.WriteLine(data);
  
 
     $data = [
         'name' => 'example',
         'value' => 123
     ];

     $response = file_get_contents('https://api.apikodu.com/api/v1/imagegenerator/resize', false, stream_context_create([
         'http' => [
             'header' => "x-api-key: YOUR_API_KEY"
         ],
         'method'  => 'POST',"
         'content' => json_encode($data)
      ]));

      print_r(json_decode($response, true));
 
  
      curl -X POST 'https://api.apikodu.com/api/v1/imagegenerator/resize' \
        -H 'Content-Type: application/json' \
        -H 'x-api-key: YOUR_API_KEY' \
        -d '{
          "name": "example",
          "value": 123
        }'
  

Start building in minutes

Create a free account, get your API key and send your first request in minutes.

Get started free