Sending GET request to this url, returns collection of PRODUCTS resources that belong to given shop.

You can narrow down list of resources by passing proper query parameters (list of which you can find below in request params section). You can basically search by:

  • name
  • vendor
  • category
  • categoryId
  • externalId
  • variantName
  • metaFieldNames
  • metaFieldValues
  • createdOn

`metaFieldNames` and`metaFieldValues` fields can be a list of values separated by comma [,].

You can specify which page of results you want and how many results per page should be there. You can also specify sort-order using one or more of allowed fields (listed below in request params section).

Last but not least you can even specify which fields from resource you want to get. If you pass param `fields` with list of fields (separated by comma [,]) we will return list of resources with only those fields (we will always add resource id to ensure that you can use that data later on).

Returns status code

200

Request url

/shops/p/products?query[name]=foo&query[metaFieldNames]=made_in,craft&query[createdOn][from]=2010-10-13&query[createdOn][to]=2020-03-15

Request params

Field nameField typeField description
queryhashUsed to search only resources that meets criteria. You can specify multiple parameters, then it uses AND logic.
KeyPossible values if fixed
name*
vendor*
category*
categoryId*
externalId*
variantName*
metaFieldNamesList of meta-fields name. (string separated with ",")
metaFieldValuesList of meta-fields value. (string separated with ",")
createdOncreatedOn[from]={Y-m-d}&createdOn[to]={Y-m-d} - It can be also UTC format
fieldsstringList of fields that should be returned. Id is always returned. Fields should be separated by comma
sorthashEnable sorting using specified field (set as a key) and order (set as a value). You can specify multiple fields to sort by.
KeyPossible values if fixed
createdOnasc,desc
perPageintNumber results on page
pageintPage number

Example Response

[
    {
        "productId": "9I",
        "href": "https://api.getresponse.com/v3/shops/nM/products/9I",
        "name": "Monster Cap",
        "url": "https://somedomain.com/products/456",
        "type": "Headwear",
        "vendor": "GetResponse",
        "externalId": "123456",
        "categories": [
            {
                "name": "Headwear",
                "categoryId": "atQ",
                "url": null,
                "href": "https://api.getresponse.com/v3/shops/nM/categories/atQ",
                "parentId": "amh",
                "externaId": null,
                "isDefault": true
            },
            {
                "name": "Accessories",
                "categoryId": "amh",
                "url": null,
                "href": "https://api.getresponse.com/v3/shops/nM/categories/amh",
                "parentId": null,
                "externaId": null,
                "isDefault": false
            }
        ],
        "variants": [
            {
                "variantId": "VTB",
                "href": "https://api.getresponse.com/v3/shops/nM/products/9I/variants/VTB",
                "name": "Red Monster Cap",
                "url": "https://somedomain.com/products/456/variant/4",
                "price": 20,
                "priceTax": 23,
                "previousPrice": null,
                "previousPriceTax": null,
                "quantity": 200,
                "position": 1,
                "barcode": "12455687",
                "sku": "SKU-1254-56-457-5689",
                "externalId": "1278945",
                "description": "Red Cap with GetResponse Monster print",
                "images": [
                    {
                        "imageId": "hY",
                        "href": "https://api.getresponse.com/v3/shops/nM/images/hY",
                        "src": "http://somedomain.com/images/src/img58db7ec64bab9.png",
                        "position": "1"
                    }
                ],
                "metaFields": [
                    {
                        "metaFieldId": "p0U",
                        "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p0U",
                        "name": "colour",
                        "value": "red",
                        "valueType": "string"
                    },
                    {
                        "metaFieldId": "hyk",
                        "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/hyk",
                        "name": "size",
                        "value": "large",
                        "valueType": "string"
                    }
                ],
                "taxes": [
                    {
                        "taxId": "pZz",
                        "href": "https://api.getresponse.com/v3/shops/nM/taxes/pZz",
                        "name": "VAT",
                        "rate": 23
                    }
                ],
                "createdOn": "2017-03-29T09:30:46+0000",
                "updatedOn": "2017-04-05T10:29:40+0000"
            }
        ],
        "metaFields": [
            {
                "metaFieldId": "p2B",
                "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p2B",
                "name": "made_in",
                "value": "Poland",
                "valueType": "string"
            },
            {
                "metaFieldId": "vUd",
                "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/vUd",
                "name": "craft",
                "value": "handcrafted",
                "valueType": "string"
            }
        ],
        "createdOn": "2017-03-29T09:30:46+0000",
        "updatedOn": "2017-04-05T10:29:40+0000"
    }
]

Possible Errors


Method returns PRODUCT according to given productId in context of given shopId.

Returns status code

200

Request url

/shops/V/products/P?fields=name

Request params

Field nameField typeField description
fieldsstringList of fields that should be returned. Id is always returned. Fields should be separated by comma

Example Response

{
    "productId": "9I",
    "href": "https://api.getresponse.com/v3/shops/nM/products/9I",
    "name": "Monster Cap",
    "url": "https://somedomain.com/products/456",
    "type": "Headwear",
    "vendor": "GetResponse",
    "externalId": "123456",
    "categories": [
        {
            "name": "Headwear",
            "categoryId": "atQ",
            "url": null,
            "href": "https://api.getresponse.com/v3/shops/nM/categories/atQ",
            "parentId": "amh",
            "externaId": null,
            "isDefault": true
        },
        {
            "name": "Accessories",
            "categoryId": "amh",
            "url": null,
            "href": "https://api.getresponse.com/v3/shops/nM/categories/amh",
            "parentId": null,
            "externaId": null,
            "isDefault": false
        }
    ],
    "variants": [
        {
            "variantId": "VTB",
            "href": "https://api.getresponse.com/v3/shops/nM/products/9I/variants/VTB",
            "name": "Red Monster Cap",
            "url": "https://somedomain.com/products/456/variant/4",
            "price": 20,
            "priceTax": 23,
            "previousPrice": null,
            "previousPriceTax": null,
            "quantity": 200,
            "position": 1,
            "barcode": "12455687",
            "sku": "SKU-1254-56-457-5689",
            "externalId": "127889",
            "description": "Red Cap with GetResponse Monster print",
            "images": [
                {
                    "imageId": "hY",
                    "href": "https://api.getresponse.com/v3/shops/nM/images/hY",
                    "src": "http://somedomain.com/images/src/img58db7ec64bab9.png",
                    "position": "1"
                }
            ],
            "metaFields": [
                {
                    "metaFieldId": "p0U",
                    "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p0U",
                    "name": "colour",
                    "value": "red",
                    "valueType": "string"
                },
                {
                    "metaFieldId": "hyk",
                    "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/hyk",
                    "name": "size",
                    "value": "large",
                    "valueType": "string"
                }
            ],
            "taxes": [
                {
                    "taxId": "pZz",
                    "href": "https://api.getresponse.com/v3/shops/nM/taxes/pZz",
                    "name": "VAT",
                    "rate": 23
                }
            ],
            "createdOn": "2017-03-29T09:30:46+0000",
            "updatedOn": "2017-04-05T10:29:40+0000"
        }
    ],
    "metaFields": [
        {
            "metaFieldId": "p2B",
            "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p2B",
            "name": "made_in",
            "value": "Poland",
            "valueType": "string"
        },
        {
            "metaFieldId": "vUd",
            "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/vUd",
            "name": "craft",
            "value": "handcrafted",
            "valueType": "string"
        }
    ],
    "createdOn": "2017-03-29T09:30:46+0000",
    "updatedOn": "2017-04-05T10:29:40+0000"
}

Possible Errors


Sending a POST request to this url, will create a new PRODUCT resource.

In order to create a new PRODUCT, you need to send PRODUCT resource in BODY of the request (remember that you need to serialize body into JSON string)

You don’t need a separate endpoint for each element (e.g. variant, category, meta-field). You can create them all with this method.

Please note that categories are not required, but if product has at least one category then one of those must be marked as default. It can be set by field `isDefault`, but if  no one of elements contains isDefault=true then system by default pick the first one from the collection.

Returns status code

201

Example Request Body

{
    "name": "Monster Cap",
    "url": "https://somedomain.com/products/456",
    "type": "Headwear",
    "vendor": "GetResponse",
    "externalId": "123456",
    "categories": [
        {
            "name": "Headwear",
            "url": null,
            "parentId": "amh",
            "externalId": "ext123",
            "isDefault": true
        }
    ],
    "variants": [
        {
            "name": "Red Monster Cap",
            "url": "https://somedomain.com/products/456/variant/4",
            "price": 20,
            "priceTax": 23,
            "previousPrice": null,
            "previousPriceTax": null,
            "quantity": 200,
            "position": 1,
            "barcode": "12455687",
            "sku": "SKU-1254-56-457-5689",
            "externalId": "127788",
            "description": "Red Cap with GetResponse Monster print",
            "images": [
                {
                    "src": "http://somedomain.com/images/src/img58db7ec64bab9.png",
                    "position": "1"
                }
            ],
            "metaFields": [
                {
                    "name": "colour",
                    "value": "red",
                    "valueType": "string"
                },
                {
                    "name": "size",
                    "value": "large",
                    "valueType": "string"
                }
            ],
            "taxes": [
                {
                    "name": "VAT",
                    "rate": 23
                }
            ]
        }
    ],
    "metaFields": [
        {
            "name": "made_in",
            "value": "Poland",
            "valueType": "string"
        },
        {
            "name": "craft",
            "value": "handcrafted",
            "valueType": "string"
        }
    ]
}

Body params

Field nameField typeField description
name (required)stringProduct name
urlstringExternal url to product
typestringProduct type
vendorstringProduct vendor
externalIdstringProduct external ID
categoriescollectionCollection of product categories
Field nameField typeField description
name (required)stringName of the category
parentIdstringId of parent category
externalIdstringExternal Id of category
urlstringExternal url of the category
variants (required)collectionCollection of product variants
Field nameField typeField description
name (required)stringName of the variant
urlstringExternal url of the variant
price (required)floatPrice
priceTax (required)floatPrice including tax
sku (required)stringStock-keeping unit of variant. Must be unique within product
previousPricefloatPrice before change
previousPriceTaxfloatPrice before change including tax
quantityintegerQuantity of variant items. Set 1 by default
positionintegerPosition of variant
barcodestringBarcode of variant, maximum 255 characters
externalIdstringVariant external ID
descriptionstringDescription of variant, maximum 1000 characters
imagescollectionCollection of variant images
Field nameField typeField description
src (required)stringSource url of image
position (required)integerPosition of image
metaFieldscollectionCollection of variant meta fields
Field nameField typeField description
name (required)stringName, minLength=3, maxLength=63
value (required)stringMeta value , minLength=0, maxLength=65000
valueType (required)stringOne of values: 'string' or 'integer'
descriptionstringMeta description minLength=0, maxLength=255
taxescollectionCollection of variant taxes
Field nameField typeField description
name (required)stringName
rate (required)stringRate value, min=0, max=99.9
metaFieldscollectionCollection of product meta fields
Field nameField typeField description
name (required)stringName, minLength=3, maxLength=63
value (required)stringMeta value , minLength=0, maxLength=65000
valueType (required)stringOne of values: 'string' or 'integer'
descriptionstringMeta description minLength=0, maxLength=255

Example Response

{
    "productId": "9I",
    "href": "https://api.getresponse.com/v3/shops/nM/products/9I",
    "name": "Monster Cap",
    "url": "https://somedomain.com/products/456",
    "type": "Headwear",
    "vendor": "GetResponse",
    "externalId": "123456",
    "categories": [
        {
            "name": "Headwear",
            "categoryId": "atQ",
            "url": null,
            "href": "https://api.getresponse.com/v3/shops/nM/categories/atQ",
            "parentId": "amh",
            "externalId": "ext123",
            "isDefault": true
        },
        {
            "name": "Accessories",
            "categoryId": "amh",
            "url": null,
            "href": "https://api.getresponse.com/v3/shops/nM/categories/amh",
            "parentId": null,
            "externalId": null,
            "isDefault": false
        }
    ],
    "variants": [
        {
            "variantId": "VTB",
            "href": "https://api.getresponse.com/v3/shops/nM/products/9I/variants/VTB",
            "name": "Red Monster Cap",
            "url": "https://somedomain.com/products/456/variant/4",
            "price": 20,
            "priceTax": 23,
            "previousPrice": null,
            "previousPriceTax": null,
            "quantity": 200,
            "position": 1,
            "barcode": "12455687",
            "sku": "SKU-1254-56-457-5689",
            "externalId": "127788",
            "description": "Red Cap with GetResponse Monster print",
            "images": [
                {
                    "imageId": "hY",
                    "href": "https://api.getresponse.com/v3/shops/nM/images/hY",
                    "src": "http://somedomain.com/images/src/img58db7ec64bab9.png",
                    "position": "1"
                }
            ],
            "metaFields": [
                {
                    "metaFieldId": "p0U",
                    "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p0U",
                    "name": "colour",
                    "value": "red",
                    "valueType": "string"
                },
                {
                    "metaFieldId": "hyk",
                    "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/hyk",
                    "name": "size",
                    "value": "large",
                    "valueType": "string"
                }
            ],
            "taxes": [
                {
                    "taxId": "pZz",
                    "href": "https://api.getresponse.com/v3/shops/nM/taxes/pZz",
                    "name": "VAT",
                    "rate": 23
                }
            ],
            "createdOn": "2017-03-29T09:30:46+0000",
            "updatedOn": "2017-04-05T10:29:40+0000"
        }
    ],
    "metaFields": [
        {
            "metaFieldId": "p2B",
            "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p2B",
            "name": "made_in",
            "value": "Poland",
            "valueType": "string"
        },
        {
            "metaFieldId": "vUd",
            "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/vUd",
            "name": "craft",
            "value": "handcrafted",
            "valueType": "string"
        }
    ],
    "createdOn": "2017-03-29T09:30:46+0000",
    "updatedOn": "2017-04-05T10:29:40+0000"
}

Possible Errors


Update the properties of shops PRODUCT. You should only send those fields that need to be changed. The remaining properties will stay the same. However, when updating variants, categories, and meta-fields, you need to send entire collections. Individual fields can’t be updated. If you want to update particular fields, you can do so by POSTING to their specific endpoints, i.e.:

  • categories - /v3/shops/{shopId}/categories/{categoryId}
  • variants - /v3/shops/{shopId}/products/{productId}/variants/{variantId}
  • metaFields - /v3/shops/{shopId}/meta-fields/{metaFieldId}

Returns status code

200

Example Request Body

{
    "name": "Monster Cap",
    "url": "https://somedomain.com/products/456",
    "type": "Headwear",
    "vendor": "GetResponse",
    "externalId": "123456",
    "categories": [
        {
            "name": "Headwear",
            "url": null,
            "parentId": "amh",
            "externalId": "ext123",
            "isDefault": true
        }
    ],
    "variants": [
        {
            "name": "Red Monster Cap",
            "url": "https://somedomain.com/products/456/variant/4",
            "price": 20,
            "priceTax": 23,
            "previousPrice": null,
            "previousPriceTax": null,
            "quantity": 200,
            "position": 1,
            "barcode": "12455687",
            "sku": "SKU-1254-56-457-5689",
            "externalId": "127788",
            "description": "Red Cap with GetResponse Monster print",
            "images": [
                {
                    "src": "http://somedomain.com/images/src/img58db7ec64bab9.png",
                    "position": "1"
                }
            ],
            "metaFields": [
                {
                    "name": "colour",
                    "value": "red",
                    "valueType": "string"
                },
                {
                    "name": "size",
                    "value": "large",
                    "valueType": "string"
                }
            ],
            "taxes": [
                {
                    "name": "VAT",
                    "rate": 23
                }
            ]
        }
    ],
    "metaFields": [
        {
            "name": "made_in",
            "value": "Poland",
            "valueType": "string"
        },
        {
            "name": "craft",
            "value": "handcrafted",
            "valueType": "string"
        }
    ]
}

Body params

Field nameField typeField description
namestringProduct name
urlstringExternal url to product
typestringProduct type
vendorstringProduct vendor
externalIdstringProduct external ID
categoriescollectionCollection of product categories
Field nameField typeField description
name (required)stringName of the category
parentIdstringId of parent category
externalIdstringExternal Id of category
urlstringExternal url of the category
variantscollectionCollection of product variants
Field nameField typeField description
name (required)stringName of the variant
urlstringExternal url of the variant
price (required)floatPrice
priceTax (required)floatPrice including tax
sku (required)stringStock-keeping unit of variant. Must be unique within product
previousPricefloatPrice before change
previousPriceTaxfloatPrice before change including tax
quantityintegerQuantity of variant items. Set 1 by default
positionintegerPosition of variant
barcodestringBarcode of variant, maximum 255 characters
externalIdstringVariant external ID
descriptionstringDescription of variant, maximum 1000 characters
imagescollectionCollection of variant images
Field nameField typeField description
src (required)stringSource url of image
position (required)integerPosition of image
metaFieldscollectionCollection of variant meta fields
Field nameField typeField description
name (required)stringName, minLength=3, maxLength=63
value (required)stringMeta value , minLength=0, maxLength=65000
valueType (required)stringOne of values: 'string' or 'integer'
descriptionstringMeta description minLength=0, maxLength=255
taxescollectionCollection of variant taxes
Field nameField typeField description
name (required)stringName
rate (required)stringRate value, min=0, max=99.9
metaFieldscollectionCollection of product meta fields
Field nameField typeField description
name (required)stringName, minLength=3, maxLength=63
value (required)stringMeta value , minLength=0, maxLength=65000
valueType (required)stringOne of values: 'string' or 'integer'
descriptionstringMeta description minLength=0, maxLength=255

Example Response

{
    "productId": "9I",
    "href": "https://api.getresponse.com/v3/shops/nM/products/9I",
    "name": "Monster Cap",
    "url": "https://somedomain.com/products/456",
    "type": "Headwear",
    "vendor": "GetResponse",
    "externalId": "123456",
    "categories": [
        {
            "name": "Headwear",
            "categoryId": "atQ",
            "url": null,
            "href": "https://api.getresponse.com/v3/shops/nM/categories/atQ",
            "parentId": "amh",
            "externalId": "ext123",
            "isDefault": true
        },
        {
            "name": "Accessories",
            "categoryId": "amh",
            "url": null,
            "href": "https://api.getresponse.com/v3/shops/nM/categories/amh",
            "parentId": null,
            "externalId": null,
            "isDefault": false
        }
    ],
    "variants": [
        {
            "variantId": "VTB",
            "href": "https://api.getresponse.com/v3/shops/nM/products/9I/variants/VTB",
            "name": "Red Monster Cap",
            "url": "https://somedomain.com/products/456/variant/4",
            "price": 20,
            "priceTax": 23,
            "previousPrice": null,
            "previousPriceTax": null,
            "quantity": 200,
            "position": 1,
            "barcode": "12455687",
            "sku": "SKU-1254-56-457-5689",
            "externalId": "127788",
            "description": "Red Cap with GetResponse Monster print",
            "images": [
                {
                    "imageId": "hY",
                    "href": "https://api.getresponse.com/v3/shops/nM/images/hY",
                    "src": "http://somedomain.com/images/src/img58db7ec64bab9.png",
                    "position": "1"
                }
            ],
            "metaFields": [
                {
                    "metaFieldId": "p0U",
                    "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p0U",
                    "name": "colour",
                    "value": "red",
                    "valueType": "string"
                },
                {
                    "metaFieldId": "hyk",
                    "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/hyk",
                    "name": "size",
                    "value": "large",
                    "valueType": "string"
                }
            ],
            "taxes": [
                {
                    "taxId": "pZz",
                    "href": "https://api.getresponse.com/v3/shops/nM/taxes/pZz",
                    "name": "VAT",
                    "rate": 23
                }
            ],
            "createdOn": "2017-03-29T09:30:46+0000",
            "updatedOn": "2017-04-05T10:29:40+0000"
        }
    ],
    "metaFields": [
        {
            "metaFieldId": "p2B",
            "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/p2B",
            "name": "made_in",
            "value": "Poland",
            "valueType": "string"
        },
        {
            "metaFieldId": "vUd",
            "href": "https://api.getresponse.com/v3/shops/nM/meta-fields/vUd",
            "name": "craft",
            "value": "handcrafted",
            "valueType": "string"
        }
    ],
    "createdOn": "2017-03-29T09:30:46+0000",
    "updatedOn": "2017-04-05T10:29:40+0000"
}

Possible Errors


Returns status code

204

Possible Errors


The method allows assigning product categories and setting a default product category. This method does not remove or unassign product categories. Returns list of product categories.

Please note that if you assign only one category to a given product, that category is marked as default. If you try to unmark it, your change won’t be executed.

Returns status code

200

Example Request Body

{
    "categories": [
        {
            "categoryId": "hYo",
            "isDefault": true
        },
        {
            "categoryId": "u0v"
        }
    ]
}

Body params

Field nameField typeField description
categories (required)collectionCollection of product categories to assign
Field nameField typeField description
categoryId (required)stringCategory ID
isDefaultbooleanSet 'true' if this category must be mark as default

Example Response

[
    {
        "categoryId": "hYo",
        "name": "category-58da4383b8af6",
        "url": null,
        "href": "https://api.getresponse.com/v3/shops/p/categories/hYo",
        "parentId": null,
        "isDefault": true
    },
    {
        "categoryId": "u0v",
        "name": "category-7h7dsf9023900",
        "url": null,
        "href": "https://api.getresponse.com/v3/shops/p/categories/u0v",
        "parentId": null,
        "isDefault": false
    }
]

Possible Errors


The method allows assigning meta-fields. This method does not remove or unassign meta-fields. Returns list of product meta-fields.

Returns status code

200

Example Request Body

{
    "metaFields": [
        {
            "metaFieldId": "nMh"
        },
        {
            "metaFieldId": "f0R"
        }
    ]
}

Body params

Field nameField typeField description
metaFields (required)collectionCollection of product meta-fields to assign
Field nameField typeField description
metaFieldId (required)stringMeta-field ID

Example Response

[
    {
        "metaFieldId": "nMh",
        "href": "https://api.getresponse.com/v3/shops/p/meta-fields/nMh",
        "name": "Colour",
        "value": "blue",
        "valueType": "string"
    },
    {
        "metaFieldId": "f0R",
        "href": "https://api.getresponse.com/v3/shops/p/meta-fields/f0R",
        "name": "Length",
        "value": "230",
        "valueType": "integer"
    }
]

Possible Errors