product-images

product-images.find

Returns the product images that meet the given conditions.

JS
CR.api('commerce.product-images.find', request, function(response) { … });
HTTP
POST /open2b/api/v3/commerce.product-images.find

request

{
  "conditions" : { // returns only the images …
    "products" : [ 281, 903, … ], // … that belong to these products, no more than 100, (id) - int(1…)
    "option" : 56 // … that belong to this option (id) (can be null) - int(1…)
  },
  "fields" : [ "id", "product", … ], // fields to return - string
  "sizes" : [ "Thumbnail", "Small", … ] // sizes to return, can be "Thumbnail", "Small", "Medium", "Large" and "Zoom" - string
  "limit" : 10, // maximum number of images to return - int(1…1000)
  "first" : 30, // index of the first image to return - int(0…)
}

response

{
  "status" : "ok",
  "images" : [ {
    "id" : "281-56-f2c9636a", // identifier - string(10…19)
    "product" : 281, // product (id) - int(1…)
    "option" : 56, // option (id) (can be null) - int(1…)
    "position" : 5, // position - int(0…20)
    "original" : "http://…/…/56-f2c9636a.jpg", // orignal image url - string(14…255)
    "resized" : { // resized images
      "thumbnail" : { // thumbnail main image (can be null)
        "url" : "http://…", // url - string(10…)
        "url2x" : "http://…", // double resolution image url (can be null) - string(10…)
        "width" : 40, // width in pixel - int(30…50)
        "height" : 40 // height in pixel - int(30…50)
      },
      "small" : { // small main image (can be null)
        "url" : "http://…", // url - string(10…)
        "url2x" : "http://…", // double resolution image url (can be null) - string(10…)
        "width" : 70, // width in pixel - int(50…250)
        "height" : 70 // height in pixel - int(50…250)
      },
      "medium" : { // medium main image (can be null)
        "url" : "http://…", // url - string(10…)
        "url2x" : "http://…", // double resolution image url (can be null) - string(10…)
        "width" : 150, // width in pixel - int(50…250)
        "height" : 150 // height in pixel - int(50…250)
      },
      "large" : { // large main image (can be null)
        "url" : "http://…", // url - string(10…)
        "url2x" : "http://…", // double resolution image url (can be null) - string(10…)
        "width" : 300, // width in pixel - int(250…800)
        "height" : 300 // height in pixel - int(250…800)
      },
      "zoom" : { // zoom main image (can be null)
        "url" : "http://…", // url - string(10…)
        "url2x" : "http://…", // double resolution image url (can be null) - string(10…)
        "width" : 1200, // width in pixel - int(250…)
        "height" : 1200 // height in pixel - int(250…)
      },
    }
  }, … ]
}

Note

Errors

Field Type Description
products Malformed Are not permitted more than 100 products
sizes Malformed '<size>' is not a valid image size

product-images.create

Creates a new product image.

JS
CR.api('commerce.product-images.create', request, function(response) { … });
HTTP
POST /open2b/api/v3/commerce.product-images.create

request

{
  "image" : { // image to create (required)
    "product" : 281, // product (id) (required) - int(1…)
    "option" : 53, // option (id) (can be null) - int(1…)
    "file" : { // file (required)
      "name" : "tshirt.jpg", // name (required) - string(1…255)
      "content" : "Y810D…B031M==" // content Base64 encoded (required) - string
    },
    "position" : 5 // position, if it is not indicated it will be added to the end - int(0…20)
  }
}

response

{
  "status" : "ok",
  "id" : "281-56-f2c9636a" // identifier of the new product image - string(10…19)
}

Errors

Field Type Description
file AlreadyExists Image already exists
file InvalidValue Image width and height must be greater or equal to <pixels> pixels
file Malformed File content format '<format>' is not supported
file Malformed File content is corrupted or is not an image
file Malformed File size can not be greater than 2 MB
option InvalidValue Option <option> does not belong to product <product>
product NotFound Product <product> does not exist
product NotFound Product <product> does not exist

Note

product-images.delete

Deletes one or more images of the same product.

JS
CR.api('commerce.product-images.delete', request, function(response) { … });
HTTP
POST /open2b/api/v3/commerce.product-images.delete

request

{
  "ids" : [ "281-56-f2c9636a", "281-32-a7nve8sc", … ] // identifiers of the images to delete (required) - string(10…19)
}

response

{
  "status" : "ok"
}
Field Type Description
ids Malformed '<id>' is not an image identifier
ids InvalidValue Images do not belong to the same product

product-images.reorder

Reorders the images of the same product changing their order.

JS
CR.api('commerce.product-images.reorder', request, function(response) { … });
HTTP
POST /open2b/api/v3/commerce.product-images.reorder

request

{
  "ids" : [ "281-56-f2c9636a", "281-32-a7nve8sc", … ] // identifiers of the images in the desired order (required) - string(10…19)
}

response

{
  "status" : "ok"
}

Errors

Field Type Description
ids InvalidValue Images do not belong to the same product
ids Malformed '<id>' is not an image identifier
ids Malformed An image identifier is repeated

product-images.resize

Resizes the images to the standard sizes.

JS
CR.api('commerce.product-images.resize', request, function(response) { … });
HTTP
POST /open2b/api/v3/commerce.product-images.resize

request

{
  "ids" : [ "281-56-f2c9636a", "281-32-a7nve8sc", … ] // identifiers of the images to resize (required) - string(10…19)
}

response

{
  "status" : "ok"
}

Errors

Field Type Description
ids Malformed '<id>' is not an image identifier
ids Malformed An image identifier is repeated
ids Malformed Are not permitted more than 100 images