ADAPTIVERESIZE API Endpoint

Version 2.197 (Release Notes ↗)

Description

Adaptively resize images with data-dependent triangulation, preserving sharp color changes. Ideal for slightly reducing web image sizes. May not be suitable for creating thumbnails from full-sized images.

Adaptively resize image with data dependent triangulation. Avoids blurring across sharp color changes. Most useful when used to shrink images slightly to a slightly smaller web size may not look good when a full-sized image is adaptively resized to a thumbnail.

HTTP Methods

GET, POST

HTTP Parameters

Required

Fields Type Description
img URL Input media URL. If you want to upload your image directly from your app, then submit a multipart/form-data POST request.
width Integer Desired image Width. If this field is missing, then the height field is applied for this one.
height Integer Desired image Height. If this field is missing, then the width field is applied for this one.
key String Your PixLab API Key ↗. You can also embed your key in the WWW-Authenticate: HTTP header and omit this parameter if you want to.

Optional

Fields Type Description
blob Boolean By default, this API endpoint return a JSON Object holding the link to the image output. But, if this parameter is set to true then the image binary contents is returned instead.
bestfit Boolean Whether to fit the image inside a bounding box.

POST Request Body

If you plan to use POST instead of a simple GET request

Allowed Content-Types:

  • multipart/form-data
  • application/json

Use multipart/form-data if you want to upload your media file directly (refer to the REST API code samples or The PixLab Github Repository↗ for a working example). If you are using JSON, then the media file must be already uploaded somewhere. Call store if you want to upload an image for example before invoking this endpoint.

HTTP Response

Fields Type Description
status Integer Status code 200 indicates success, any other code indicates failure.
link URL Link to the media output which is usually stored on the pixlab.xyz storage server unless you set your own S3 keys (refer to your dashboard ↗ on how to do that).
id String Unique media ID.
error String Error message if status != 200.

The API returns a JSON response with application/json content type if the optional blob parameter is not set.

When the blob parameter is omitted, the response contains a JSON Object with the fields described above. If blob is enabled, the raw media binary is returned instead.

Code Samples


import requests

response = requests.get(
    'https://api.pixlab.io/adaptiveresize',
    params={
        'img': 'http://www.drodd.com/images15/nature31.jpg',
        'width': 512,
        'key': 'PIXLAB_API_KEY',
        'bestfit': True
    }
)
response.raise_for_status()
data = response.json()

if data['status'] != 200:
    print(data['error'])
else:
    print(f"Link to the pic: {data['link']}")
← Return to API Endpoint Listing