Version 1.9.72 (Release Notes)


smartcrophttps://api.pixlab.io/smartcrop

Description

Deprecated Command. Use crop instead

HTTP Methods

GET, POST

Request Parameters

Required

FieldsTypeDescription
imgURLInput media URL. If you want to upload your image directly from your app, then submit a multipart/form-data POST request.
widthIntegerDesired crop Width. If this field is missing, then the height field is applied for this one.
heightIntegerDesired crop Height. If this field is missing, then the width field is applied for this one.
xIntegerThe X coordinate of the cropped region's top left corner.
yIntegerThe Y coordinate of the cropped region's top left corner.
keyStringYour PixLab API Key. You can also embed your key in the WWW-Authenticate: HTTP header and omit this parameter if you want to.

Optional
FieldsTypeDescription
blobBooleanBy default, this command 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.

POST Request Body (If you plan to use POST instead of a simple GET request)

Allowed Content-Type:

multipart/form-data
application/json

Use multipart/form-data if you want to upload your media file directly (refer to the sample set 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.

Response

application/json if the optional blob parameter is not set.

This command return a JSON object after each call only if the optional blob parameter is not set. Otherwise the media binary contents is returned instead. The following are the JSON fields returned in response body:

FieldsTypeDescription
statusIntegerStatus code 200 indicates success, any other code indicates failure.
linkURLLink 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).
idStringUnique media ID.
errorStringError message if status != 200.

Python Example

# Extract Jeremy's face. The rectangle coordinates were obtained from the facedetect command and passed untouched to this command. 
# Refer to sample set page for the full example.

import requests
import json

req = requests.get('https://api.pixlab.io/crop',params={
	'img': 'http://cf.broadsheet.ie/wp-content/uploads/2015/03/jeremy-clarkson_3090507b.jpg',
	'key':'My_PixLab_Key',
	"x":164,
	"y":95,
	"width":145,
	"height":145
})
reply = req.json()
if reply['status'] != 200:
    print (reply['error'])
else:
    print ("Face location: "+ reply['link'])

See Also