curl --request PATCH \
--url https://api.interchange.io/api/v2/storefront/house-discounts/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"discountPercent": 20,
"notes": "<string>"
}
'import requests
url = "https://api.interchange.io/api/v2/storefront/house-discounts/{id}"
payload = {
"discountPercent": 20,
"notes": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({discountPercent: 20, notes: '<string>'})
};
fetch('https://api.interchange.io/api/v2/storefront/house-discounts/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "17",
"storefrontId": "1234",
"houseDomain": "<string>",
"scope": "brand",
"discountPercent": 123,
"notes": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}Update a rate-card discount row
Partially update a rate-card discount row. Only discountPercent and notes are mutable; house_domain and scope are immutable — delete and recreate to change either.
curl --request PATCH \
--url https://api.interchange.io/api/v2/storefront/house-discounts/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"discountPercent": 20,
"notes": "<string>"
}
'import requests
url = "https://api.interchange.io/api/v2/storefront/house-discounts/{id}"
payload = {
"discountPercent": 20,
"notes": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({discountPercent: 20, notes: '<string>'})
};
fetch('https://api.interchange.io/api/v2/storefront/house-discounts/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "17",
"storefrontId": "1234",
"houseDomain": "<string>",
"scope": "brand",
"discountPercent": 123,
"notes": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}Authorizations
API key or access token
Path Parameters
Surrogate id of the house-discount row.
0 < x <= 900719925474099117
Body
Partial update for a rate-card discount. Only discountPercent and notes are mutable; house_domain and scope are immutable — delete and recreate to change either.
Discount percent off the Seller Account quote for buys whose brand or operator resolves to this domain. 0–100. The larger of this and any buyer-specific instruction wins; the quote is floored at the wholesale cost.
0 <= x <= 10020
2000Response
Update a rate-card discount row
A single house-scoped buyer-discount row.
Surrogate id (BIGINT serialized as string).
"17"
Legacy v2 Seller Account id the row belongs to (BIGINT serialized as string).
"1234"
Which buyer axis this discount applies to: brand matches the buy's advertiser brand (and its corporate parents/house), operator matches the buying operator (agency/DSP, and its parents/house). When both a brand and an operator discount match a buy, the larger applies (a tie resolves to the brand axis).
brand, operator "brand"
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$