Skip to main content
GET
Get one offer

Authorizations

Authorization
string
header
required

An API key from Settings → Team → API keys in Aggrefine.

Path Parameters

channelId
string<uuid>
required

From GET /v1/channels.

offerId
string<uuid>
required

An offer's id.

Response

The offer

One product in one merchant feed, with your channel's tracking link: the same shape for every network. Every field is always there; only id, network, merchant and feed are always set, any other may be null.

id
string<uuid>
required

Aggrefine's id for the offer: one product in one merchant feed. Stable across calls and imports; use it to track the offer.

network
string
required

The affiliate network the offer comes from, and that link earns through. Always set.

Example:

"awin"

merchant
object
required

The shop selling the offer. Always set.

feed
object
required

The merchant feed the offer comes from. Always set. A merchant with several feeds (other markets, a member price list) has an offer in each.

sku
string | null
required

The merchant's own product id, as its feed sent it. Null when the feed sent none.

Example:

"SKU-1"

mpn
string | null
required

The manufacturer's part number (MPN), as the feed sent it. Null when the feed sent none.

Example:

"RC-2551"

gtin
object | null
required

The product's barcode. Null when the feed sent none.

title
string | null
required

The product's name, as the feed sent it. Null when it sent none.

Example:

"Dry dog food 8 kg"

description
object | null
required

The product's description. Null when the feed sent none.

short_description
string | null
required

The feed's short description, on its own (never in place of description). Text as sent; HTML keeps only simple formatting. Null when the feed sent none.

brand
string | null
required

The brand, as the feed sent it. Null when it sent none.

Example:

"Northpaw"

category
object | null
required

The merchant's own category for the product: its words, never Aggrefine's taxonomy. Null when the feed sent no category.

price
object
required

The price the merchant sells at now. Always an object; its fields may be null.

old_price
object
required

The price before a discount, when the feed gives one: as sent, also when it isn't above price. Always an object; its fields may be null.

currency
string | null
required

The currency of price and old_price (ISO 4217), as the feed gives it. Null when the feed gives none: never guessed from the merchant or the market.

Example:

"SEK"

availability
object
required

Whether the merchant has the product in stock.

shipping
object | null
required

Shipping as the merchant's feed gives it. Null when the feed sent neither a shipping cost nor a delivery time: unknown, never free.

color
string | null
required

The colour, as the feed sent it. Null when it sent none.

size
string | null
required

The size, as the feed sent it. Null when it sent none.

Example:

"8 kg"

pack_quantity
string | null
required

How many items the offer is for (a multipack), as the feed sent it. Null when it sent none.

item_group_id
string | null
required

The merchant's id for the group of variants (sizes, colours) the product belongs to, as the feed sent it. Null when it sent none.

images
string[]
required

The product's image URLs as the feed sent them, main image first: http(s) only. Hosted by the merchant or its network, not by Aggrefine. Empty when the feed sent none.

product_url
string | null
required

The product's page on the merchant's site (http(s)), as the feed gives it: not a tracking link, you earn nothing from it. Null when the feed gives none.

Your tracking link for this channel: the feed's link with your channel's id in it on its network. Null when the feed's link couldn't be made into the channel's.

sub_id_template
string | null
required

link with a place for your own sub-id (click reference), to tell your clicks and sales apart in the network's reports: replace {sub_id} with your value, URL-encoded. It goes in the parameter the network documents for it: epi on Adtraction, clickref on Awin, subId1 on impact.com. Null when link is null, or on a network that documents no such parameter (Addrevenue).

Example:

"https://track.adtraction.com/t/t?epi={sub_id}&a=1&as=2&t=2&tk=1"

attributes
object
required

Every other field the feed sent that has no place above, key and value exactly as sent. Keys vary by network and merchant: this object is part of the contract, its keys aren't. Empty when there are none.

Example:
source_updated_at
string<date-time> | null
required

When the feed says the merchant last changed the product. Null when it doesn't say.

first_seen_at
string<date-time>
required

When Aggrefine first found the offer in the merchant's feed.

updated_at
string<date-time>
required

When Aggrefine last found a change in the offer's values in the merchant's feed.