Search for coupons - Fabric
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Search for coupons
cURL
curl --request POST \
--url https://api.fabric.inc/v3/coupons/search \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-fabric-tenant-id: <x-fabric-tenant-id>' \
--data '
{
"size": 10,
"offset": 0,
"filters": [\
{\
"field": "name",\
"value": "Summer",\
"operator": "EQUAL"\
}\
]
}'
Python
import requests
url = "https://api.fabric.inc/v3/coupons/search"
payload = {
"size": 10,
"offset": 0,
"filters": [\
{\
"field": "name",\
"value": "Summer",\
"operator": "EQUAL"\
}\
]
}
headers = {
"x-fabric-tenant-id": "<x-fabric-tenant-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
JavaScript
const options = {
method: 'POST',
headers: {
'x-fabric-tenant-id': '<x-fabric-tenant-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
size: 10,
offset: 0,
filters: [{field: 'name', value: 'Summer', operator: 'EQUAL'}]
})
};
fetch('https://api.fabric.inc/v3/coupons/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, [\
CURLOPT_URL => "https://api.fabric.inc/v3/coupons/search",\
CURLOPT_RETURNTRANSFER => true,\
CURLOPT_ENCODING => "",\
CURLOPT_MAXREDIRS => 10,\
CURLOPT_TIMEOUT => 30,\
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\
CURLOPT_CUSTOMREQUEST => "POST",\
CURLOPT_POSTFIELDS => json_encode([\
'size' => 10,\
'offset' => 0,\
'filters' => [\
[\
'field' => 'name',\
'value' => 'Summer',\
'operator' => 'EQUAL'\
]\
]\
]),\
CURLOPT_HTTPHEADER => [\
"Authorization: Bearer <token>",\
"Content-Type: application/json",\
"x-fabric-tenant-id: <x-fabric-tenant-id>"\
],\
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
?>
Go
package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.fabric.inc/v3/coupons/search"
payload := strings.NewReader("{\n \"size\": 10,\n \"offset\": 0,\n \"filters\": [\n {\n \"field\": \"name\",\n \"value\": \"Summer\",\n \"operator\": \"EQUAL\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-fabric-tenant-id", "<x-fabric-tenant-id>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
Response
Successful Response
{
"query": {
"size": 10,
"offset": 10,
"count": 50
},
"data": [\
{\
"id": "abcdefg1ee7ce20123456789",\
"couponCodes": [\
"SUMMER100",\
"SUMMER20"\
],\
"couponCodesCount": 0,\
"status": "SCHEDULED",\
"name": "CREATE PROMO",\
"startAt": "2019-08-24T14:15:22.000Z",\
"endAt": "2019-08-25T14:15:22.000Z",\
"updatedAt": "2019-08-20T14:15:22.000Z",\
"singleMultiUse": "MULTI_USE",\
"type": "PRODUCT",\
"level": 1,\
"stackingType": "STACKABLE",\
"isStackable": true,\
"isAlwaysApplied": false,\
"additionalAttributes": [\
{\
"name": "type",\
"values": "Birthday",\
"attributeId": 100000\
}\
],\
"promotionMessages": [\
{\
"title": "Buy 2 get 1 free",\
"message": "Offer valid at participating stores through September 5, 2023.",\
"pages": [\
"PDP",\
"Cart"\
],\
"locales": [\
"en-CA",\
"fr-CA"\
]\
}\
],\
"proximityMessages": {\
"threshold": 1,\
"localizedMessages": [\
{\
"locales": [\
"en-CA"\
],\
"message": "Buy some more to get the discount!"\
}\
]\
}\
}\
]
}
Error Responses
{
"type": "BAD_REQUEST",
"message": "Bad request"
}
{
"type": "UNAUTHORIZED",
"message": "Invalid credentials"
}
{
"type": "INTERNAL_SERVER_ERROR",
"message": "Internal server error"
}
Authorizations
Authorization
stringheader- required
Bearer authentication header of the form
Bearer <token>, where<token>is your auth token.
Headers
- x-fabric-tenant-id:
string- required
- A header used by fabric to identify the tenant making the request. You must include tenant id in the authentication header for an API request to access any of fabric’s endpoints.