POST
/
media
/
resize
Available on Premium, Business, Enterprise plans.Max Pack required

The social networks have specific requirements for social media images. The resize endpoint allows you to choose a social network compatible image size, add watermarks, change backgrounds, add effects, crop,and more.

By default resizing will change the dimensions of an image, but not crop the image. You may instead crop the image. See below for details.

Header Parameters

Authorization
string
required
Format: Authorization: Bearer API_KEY. See API overview for more information.

Body Parameters

imageUrl
string
required

URL of image to be resized. Must begin with https://

platform
array
required

Social media platform for which the URL will be resized. See platform options for details.

file
object

Send the media file as a multipart form-data object. Required if imageUrl not present.

watermarkUrl
string

URL of watermark to be applied to resized image. The watermark will appear in the lower right corner of the image. See watermark for details.

effects
string

Change opacity, colors, etc. See effects options for details.

dimensions
object

Object specifying width and height for resizing. If cropping optionally specify the center x and y coordinates. Default is the center of the image.

{
  "width": 500,
  "height": 500,
  "xCoordinate": 35, // optional for crop mode
  "yCoordinate": 50 // optional for crop mode
}
Width and height required if platform is not specified.
mode
string
default: "resize"

Value: blur or crop. See mode for details.

convertToJpg
boolean

Automatically convert to a JPG file, such as a PNG to a JPG. 80% quality will be used. See convert to JPG for details.

Platform Options

Specify a platform as a String to use predefined dimensions of the image. Or you may specify your own with dimension field.

For example "platform": "facebook" will set the dimension of the image as width 1200px and height 630px.

  • facebook: 1200px width, 630px height.
  • instagram: 1080px width, 1080px height.
  • instagram_landscape: 1080px width, 680px height.
  • instagram_portrait: 1080px width, 1350px height.
  • instagram_special: 1080px width, 800px height.
  • linkedin: 1200px width, 627px height.
  • pinterest: 1080px width, 1920px height.
  • twitter: 1600px width, 900px height.

Mode

Crop

Crop will cut off “crop” the image to the specified dimensions. By default the center coordinate will be the center of the image. You may also specify your own x/y coordinates.

Example JSON:

{
  // If no width/height the platform dimensions will be used
  "dimensions": {
    "width": 1080,
    "height": 1080,
    "xCoordinates": 35,
    "yCoordinates": 50
  }
}

Either the platform or the dimensions field width and height must be specified.

For square crops, if width or height are less than the dimensions of the provided image, the small of the width or height will be used. For example, if the image is 1200x800 and the crop requested is 1080x1080, the image returned will be 800x800.

Blur

Blur effect will duplicate the image as a background and blur the image.

Example blur JSON:

{
  "mediaUrl": "https://img.ayrshare.com/012/gb.jpg",
  "platform": "instagram",
  "mode": "blur"
}

Example blur image:

Watermark

You may add a watermark to the image by providing a URL, which must begin with https://. The watermark will appear in the bottom right corner of the image. We recommend a PNG with a transparent background.

Example watermark JSON:

{
  "mediaUrl": "https://img.ayrshare.com/random/photo-13.jpg",
  "platform": "instagram",
  "watermarkUrl": "https://img.ayrshare.com/012/100-percent.png"
}

Example watermark image:

Effects Options

Color Hexadecimal

Hexadecimal value for color of background for blur. Only applicable if "mode": "blur". String value, e.g. "#A020F0"

Example color background JSON:

{
  "mediaUrl": "https://img.ayrshare.com/012/gb.jpg",
  "platform": "instagram",
  "mode": "blur",
  "effects": {
    "color": "#A020F0"
  }
}

Example color background image:

Color: Grayscale, Sepia, Invert

You made change the primary image color by specifying grayscale, sepia, or invert. The field "blur": true is not required and should not be used if you do not want a background.

Example grayscale JSON:

{
  "mediaUrl": "https://img.ayrshare.com/random/photo-13.jpg",
  "platform": "instagram",
  "effects": {
    "color": "grayscale"
  }
}

Example grayscale image:

Opacity

Set the opacity of the image. Number value range: 0 - 1.

Example opacity JSON:

{
  "opacity": 0.2
}

Quality

For JPG or JEPG images specify the quality, or amount of compression, of the image. The lower the number the more compressed, but lower the image quality. The higher the number the less compressed, but the higher the image quality. Number value range: 0 - 100.

Example quality JSON:

{
  "quality": 20
}

Convert to JPG

Convert to JPG will convert the image to a JPG file. The quality will be set to 80% by default.

Example convert to JPG JSON:

{
  "convertToJpg": true
}