Search code examples
amazon-selling-partner-api

Issue with other_offer_image_locator_3 in Amazon Selling Partner API


I'm having weird issue with other_offer_image_locator_3 attribute when sending to PUT /listings/2021-08-01/items/{sellerId}/{sku} Amazon SP API Endpoint. This is marketplace for Poland.

Attributes looks like this:

{
    "purchasable_offer": […],
    "country_of_origin": […],
    "item_name": […],
    "fulfillment_availability": […],
    "manufacturer": […],
    "condition_type": […],
    "part_number": […],
    "product_description": […],
    "brand": […],
    "supplier_declared_dg_hz_regulation": […],
    "warranty_description": […],
    "included_components": […],
    "compatible_devices": […],
    "merchant_suggested_asin": […],
    "finish_type": […],
    "color": […],
    "material": […],
    "recommended_browse_nodes": […],
    "item_length_width": […],
    "externally_assigned_product_identifier": […],
    "bullet_point": […],
    "main_product_image_locator": [
        {
            "media_location": {
                "link": "https://example.com/photo1.jpg",
                "width": 2000,
                "height": 2000
            },
            "marketplace_id": "A1C3SOZRARQ6R3"
        }
    ],
    "other_product_image_locator_1": [
        {
            "media_location": {
                "link": "https://example.com/photo2.jpg",
                "width": 2000,
                "height": 2000
            },
            "marketplace_id": "A1C3SOZRARQ6R3"
        }
    ],
    "other_product_image_locator_2": [
        {
            "media_location": {
                "link": "https://example.com/photo3.jpg",
                "width": 2000,
                "height": 2000
            },
            "marketplace_id": "A1C3SOZRARQ6R3"
        }
    ],
    "other_product_image_locator_3": [
        {
            "media_location": {
                "link": "https://example.com/photo4.jpg",
                "width": 2000,
                "height": 2000
            },
            "marketplace_id": "A1C3SOZRARQ6R3"
        }
    ],
    "other_product_image_locator_4": [
        {
            "media_location": {
                "link": "https://example.com/photo5.jpg",
                "width": 2000,
                "height": 2000
            },
            "marketplace_id": "A1C3SOZRARQ6R3"
        }
    ]
}

And I'm getting for every request error:

{
    "sku": "…",
    "status": "INVALID",
    "submissionId": "…",
    "issues": [
        {
            "code": "4000001",
            "message": "Podana wartość atrybutu „other_offer_image_locator_3” jest nieprawidłowa.",
            "severity": "ERROR",
            "attributeNames": [
                "other_offer_image_locator_3"
            ]
        }
    ]
}

Error message says The specified value of the attribute "other_offer_image_locator_3" is incorrect.

I've checked:

  • All image files are in .jpg format.
  • All image paths are correct.
  • I did not find in the Internet any suggestion what could be wrong.
  • GPT AI and Notion AI gives dumb fictional JSON suggestions. ;P

What is wrong with this other_offer_image_locator_3 attribute? It is the same as _1, _2 and _4 but with different digits in names.


Solution

  • I finally resolved this by requesting Product Type Definitions Api (v2020-09-01). It will respond with a full schema in JSON, where all attributes are described with example values and description.

    Photos object should look like this:

    "other_product_image_locator_4": [
      {
        "media_location": "https://example.com/photo5.jpg",
        "marketplace_id": "A1C3SOZRARQ6R3"
      }
    ],
    

    Important: Amazon SP API accepts only URLs to their servers, so you will need S3 for image file storage.

    Good luck with your integration! ;)