GET
/
catalog
/
offers
/
merchants
/
{merchant_id}
curl --request GET \
  --url https://sandbox-api.violet.io/v1/catalog/offers/merchants/{merchant_id}
{
  "content": [
    {
      "id": 123,
      "product_id": "<string>",
      "external_id": "<string>",
      "external_url": "<string>",
      "name": "<string>",
      "description": "<string>",
      "source": "OTHER",
      "seller": "<string>",
      "vendor": "<string>",
      "merchant_id": 123,
      "available": true,
      "visible": true,
      "min_price": 123,
      "max_price": 123,
      "currency": "<string>",
      "source_category_name": "<string>",
      "metadata": [
        {
          "version": 123,
          "type": "STRING",
          "external_type": "<string>",
          "key": "<string>",
          "value": {},
          "external_id": "<string>",
          "source": "INTERNAL"
        }
      ],
      "variants": [
        {
          "id": 123,
          "product_variant_id": "<string>",
          "external_id": "<string>",
          "name": "<string>",
          "visual": true,
          "values": [
            {
              "id": 123,
              "product_variant_value_id": "<string>",
              "external_id": "<string>",
              "name": "<string>",
              "sku_ids": [
                123
              ],
              "display_order": 123
            }
          ],
          "display_order": 123
        }
      ],
      "skus": [
        {
          "id": 123,
          "offer_id": 123,
          "merchant_id": 123,
          "external_id": "<string>",
          "name": "<string>",
          "asin": "<string>",
          "gtin": "<string>",
          "upc": "<string>",
          "ean": "<string>",
          "isbn": "<string>",
          "in_stock": true,
          "quantity_available": 123,
          "inventory_tracked": true,
          "sale_price": 123,
          "retail_price": 123,
          "currency": "<string>",
          "presented_currency": "<string>",
          "taxable": true,
          "tax_type": "DEFAULT",
          "albums": [
            {
              "id": 123,
              "parent_id": 123,
              "type": "OFFER",
              "name": "<string>",
              "media": [
                {
                  "id": 123,
                  "album_id": 123,
                  "external_id": "<string>",
                  "cloud_id": "<string>",
                  "url": "<string>",
                  "source_url": "<string>",
                  "type": "IMAGE",
                  "display_order": 123,
                  "primary": true
                }
              ],
              "primary_media": {
                "id": 123,
                "album_id": 123,
                "external_id": "<string>",
                "cloud_id": "<string>",
                "url": "<string>",
                "source_url": "<string>",
                "type": "IMAGE",
                "display_order": 123,
                "primary": true
              }
            }
          ],
          "variant_values": [
            {
              "variant": "<string>",
              "value": "<string>"
            }
          ],
          "type": "PHYSICAL",
          "status": "UNAVAILABLE",
          "date_created": "2023-11-07T05:31:56Z",
          "date_last_modified": "2023-11-07T05:31:56Z",
          "sku_dimensions": {
            "sku_id": 123,
            "weight": 123,
            "height": 123,
            "width": 123,
            "length": 123,
            "type": "SKU"
          },
          "shipping_dimensions": {
            "sku_id": 123,
            "weight": 123,
            "height": 123,
            "width": 123,
            "length": 123,
            "type": "SKU"
          },
          "display_order": 123
        }
      ],
      "albums": [
        {
          "id": 123,
          "parent_id": 123,
          "type": "OFFER",
          "name": "<string>",
          "media": [
            {
              "id": 123,
              "album_id": 123,
              "external_id": "<string>",
              "cloud_id": "<string>",
              "url": "<string>",
              "source_url": "<string>",
              "type": "IMAGE",
              "display_order": 123,
              "primary": true
            }
          ],
          "primary_media": {
            "id": 123,
            "album_id": 123,
            "external_id": "<string>",
            "cloud_id": "<string>",
            "url": "<string>",
            "source_url": "<string>",
            "type": "IMAGE",
            "display_order": 123,
            "primary": true
          }
        }
      ],
      "three_d_enabled": true,
      "three_d_resource": "<string>",
      "type": "PHYSICAL",
      "status": "UNAVAILABLE",
      "publishing_status": "NOT_PUBLISHED",
      "date_created": "2023-11-07T05:31:56Z",
      "date_last_modified": "2023-11-07T05:31:56Z",
      "date_last_consolidated": "2023-11-07T05:31:56Z",
      "commission_rate": 123,
      "currency_symbol": "<string>",
      "presented_currency": "<string>",
      "default_image_url": "<string>",
      "subscription_status": "NOT_SUBSCRIBED",
      "external_data": {},
      "collections": [
        {
          "id": 123,
          "external_id": "<string>",
          "merchant_id": 123,
          "name": "<string>",
          "handle": "<string>",
          "description": "<string>",
          "status": "INACTIVE",
          "type": "CUSTOM",
          "media": {
            "source_url": "<string>",
            "alt": "<string>",
            "height": 123,
            "width": 123,
            "date_created": "2023-11-07T05:31:56Z"
          },
          "date_created": "2023-11-07T05:31:56Z",
          "date_last_modified": "2023-11-07T05:31:56Z"
        }
      ],
      "tags": [
        "<string>"
      ]
    }
  ],
  "last": true,
  "total_pages": 123,
  "total_elements": 123,
  "first": true,
  "number_of_elements": 123,
  "size": 123,
  "number": 123,
  "empty": true,
  "next_page_cursor": "<string>",
  "pageable": {
    "page_number": 123,
    "page_size": 123,
    "sort": {
      "unsorted": true,
      "sorted": true,
      "empty": true
    },
    "offset": 123,
    "paged": true,
    "unpaged": true
  },
  "sort": {
    "unsorted": true,
    "sorted": true,
    "empty": true
  }
}

Retrieve a list of all Offer’s for a Merchant, given their merchant_id. For most performant results please make sure to use the since property.

This endpoint supports collections and metadata. Use the include query param.

To avoid performance issues, total_elements and total_pages properties are not populated for this endpoint response, being both returned with default value of 0.

Violet strongly discourages scraping this endpoint. Most offers do not change very often, so re-scraping all of a merchant’s offers on a regular basis is a very costly way to keep your catalog up to date.

Violet’s recommendation is to make use of offer webhooks to be notified when offers are added/updated in Violet’s system. This works because when your merchants onboard, their products are pulled into Violet’s system and so you will receive a webhook for each of the new merchant’s offers. Additionally, Violet employs a number of methods to keep our merchant’s catalogs up to date and all of those methods will generate webhooks sent to your system.

Headers

X-Violet-Token
string
X-Violet-App-Secret
string
X-Violet-App-Id
integer
X-Violet-Api-Features
string

Path Parameters

merchant_id
integer
required

Query Parameters

since
integer

A date represented in epoch milliseconds (https://www.epochconverter.com/). Gets offers last modified after the given date.

page
integer
default: 1
size
integer
default: 20
map_variants
boolean
default: true
base_currency
string
include
string

Comma-separated list of extra data to be included. E.g. metadata,collections.

Response

default - application/json
content
object[]

The actual content of the response; A list of the result objects

last
boolean

Boolean indicating if this is the last page

total_pages
integer

The total count of pages available

total_elements
integer

The total count of objects available

first
boolean

Boolean indicating if this is the first page of the response

number_of_elements
integer

The total number of objects in this specific response

size
integer

The page size selected at request time

number
integer

The page number selected at request time

empty
boolean

Boolean indicating if the response content is empty

next_page_cursor
string

Contains the cursor for the next page. This property will only be used for situations where the API does not support the page number/page size paradigm and it will mutually exclusive with the size/number fields in the response. If this property is returned it must be passed when requesting the next page from the API. Does not apply to endpoints that do not have a next_page_cursor query param documented.

pageable
object

Violet wrapper for springframework pageable

sort
object

Violet Wrapper for springframework sort