Skip to main content
The Product Watch API lets you monitor affiliate products for price changes, availability updates, and sale events. When a condition you define is met, the API sends a notification to your webhook. You define the products to watch, the rules that trigger a notification, and how long the watch remains active.

Watch types

Choose the watch type that matches how you identify your products.
Use target_type: "product" to watch products using internal Affiliate.com product IDs. This is the most flexible watch type and supports every rule, filter, and condition.Limits
  • Up to 100 product IDs per watch
  • Up to 10 rules per watch
Supported filters: network.id, merchant.id, direct_url, currencyUse this type when you have already searched for and identified products in the Affiliate.com database.

Watch behavior

Watches are checked every 6 hours. When a rule condition is satisfied during a check, the watch transitions to "completed" status and a notification is sent to your webhook. Completed watches do not resume automatically. To continue monitoring after a rule triggers, call the PUT endpoint and set status: "active" with updated rules or a new expire_timestamp. If a watched product becomes unavailable in the database, the watch is removed and you receive a final notification with field: "__product__" and new_value: "unavailable".

Expiration policy

Every watch expires at a configurable timestamp. If you do not supply expire_timestamp, the watch expires 90 days from when you create it. When a watch reaches its expiration, you receive a webhook notification and the watch stops checking.

Metadata

You can attach up to 16 key-value pairs of custom metadata to each watch. Use metadata to tag watches with campaign names, product categories, priority levels, or any other context your application needs.
  • Key maximum length: 64 characters
  • Value maximum length: 512 characters
Metadata is returned in all API responses and in every webhook notification, so you can use it to route and process notifications programmatically. You can also filter watches by metadata using query parameters: ?metadata[campaign]=summer_sale.

Rule types and conditions

Rules define what change triggers a notification. Each rule specifies a field (what to watch), a condition (how it must change), and optionally a threshold (by how much). Multiple rules all must match to trigger a notification (logical AND).

Supported conditions by field

The change condition triggers on any change and does not require a threshold. All other conditions require a threshold.

Threshold types

Allowed threshold values when threshold.type is "value": When threshold.type is "percentage": provide a number from 1–100.

Filters

You can optionally narrow which products trigger a watch using the filters array. Each filter specifies a field, an operator, and a value. Supported filter fields: network.id, merchant.id, direct_url, currency
Filters are not supported for ASIN watches. Including a filters array in an ASIN watch request will result in an error.

Available endpoints