Query on carts
curl --request POST \
--url https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query \
--header 'Content-Type: application/json' \
--header 'x-site-context: <x-site-context>' \
--data '
{
"offset": 0,
"limit": 10,
"filters": {
"date": {
"gte": "2019-12-14T23:20:50.52Z",
"lte": "2019-12-14T23:20:50.52Z"
},
"userId": "<string>",
"approver": "<string>",
"account": "<string>",
"po": "<string>",
"company": "<string>",
"status": [
"pending"
]
}
}
'import requests
url = "https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query"
payload = {
"offset": 0,
"limit": 10,
"filters": {
"date": {
"gte": "2019-12-14T23:20:50.52Z",
"lte": "2019-12-14T23:20:50.52Z"
},
"userId": "<string>",
"approver": "<string>",
"account": "<string>",
"po": "<string>",
"company": "<string>",
"status": ["pending"]
}
}
headers = {
"x-site-context": "<x-site-context>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-site-context': '<x-site-context>', 'Content-Type': 'application/json'},
body: JSON.stringify({
offset: 0,
limit: 10,
filters: {
date: {gte: '2019-12-14T23:20:50.52Z', lte: '2019-12-14T23:20:50.52Z'},
userId: '<string>',
approver: '<string>',
account: '<string>',
po: '<string>',
company: '<string>',
status: ['pending']
}
})
};
fetch('https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query",
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([
'offset' => 0,
'limit' => 10,
'filters' => [
'date' => [
'gte' => '2019-12-14T23:20:50.52Z',
'lte' => '2019-12-14T23:20:50.52Z'
],
'userId' => '<string>',
'approver' => '<string>',
'account' => '<string>',
'po' => '<string>',
'company' => '<string>',
'status' => [
'pending'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-site-context: <x-site-context>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query"
payload := strings.NewReader("{\n \"offset\": 0,\n \"limit\": 10,\n \"filters\": {\n \"date\": {\n \"gte\": \"2019-12-14T23:20:50.52Z\",\n \"lte\": \"2019-12-14T23:20:50.52Z\"\n },\n \"userId\": \"<string>\",\n \"approver\": \"<string>\",\n \"account\": \"<string>\",\n \"po\": \"<string>\",\n \"company\": \"<string>\",\n \"status\": [\n \"pending\"\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-site-context", "<x-site-context>")
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))
}HttpResponse<String> response = Unirest.post("https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query")
.header("x-site-context", "<x-site-context>")
.header("Content-Type", "application/json")
.body("{\n \"offset\": 0,\n \"limit\": 10,\n \"filters\": {\n \"date\": {\n \"gte\": \"2019-12-14T23:20:50.52Z\",\n \"lte\": \"2019-12-14T23:20:50.52Z\"\n },\n \"userId\": \"<string>\",\n \"approver\": \"<string>\",\n \"account\": \"<string>\",\n \"po\": \"<string>\",\n \"company\": \"<string>\",\n \"status\": [\n \"pending\"\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-site-context"] = '<x-site-context>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"offset\": 0,\n \"limit\": 10,\n \"filters\": {\n \"date\": {\n \"gte\": \"2019-12-14T23:20:50.52Z\",\n \"lte\": \"2019-12-14T23:20:50.52Z\"\n },\n \"userId\": \"<string>\",\n \"approver\": \"<string>\",\n \"account\": \"<string>\",\n \"po\": \"<string>\",\n \"company\": \"<string>\",\n \"status\": [\n \"pending\"\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"query": {
"limit": 10,
"offset": 0,
"count": 1
},
"carts": [
{
"deleted": false,
"allPromosApplied": [
{
"unit": "<string>",
"value": 123,
"ON": {
"kind": "SKU",
"value": ""
},
"id": "<string>",
"promoId": "<string>",
"promoCode": "<string>"
}
],
"items": [
{
"itemId": 1000000012,
"quantity": 2,
"price": {
"currency": "USD",
"base": 15.99,
"discount": {
"price": 10.99,
"discountAmount": 10.99,
"promosApplied": [
{
"unit": "<string>",
"value": 123,
"ON": {
"kind": "SKU",
"value": ""
},
"id": "<string>",
"promoId": "<string>",
"promoCode": "<string>"
}
]
},
"sale": 10.99
},
"group": [
"5ddd1a156c5a5fed1e0d91fb"
],
"priceListId": 100002,
"isUnique": 123,
"discountedQuantity": 0,
"lineItemId": 1,
"totalPrice": {
"currency": "USD",
"amount": 200
},
"id": "5fee9d59f2f08a1b3cbdea08",
"sample": false,
"weightUnit": "kg",
"isPickup": false,
"sku": "blue",
"taxCode": "PH0607",
"title": "item title",
"weight": 7,
"attributeTotalPrice": 0,
"attributes": [
{
"price": 10,
"_id": "6146e98408e3700008b64611",
"attributeId": "60a77de306f682000975c24c",
"value": "true/false",
"name": "Gift Message",
"type": "<string>",
"id": "6146e98408e3700008b64611",
"shipTo": {
"street1": "123 Main Street",
"city": "Seattle",
"state": "WA",
"country": "United States of America",
"zipCode": "10008-1234",
"name": {
"first": "John",
"last": "Smith"
},
"email": "johnsmith@fabric.inc",
"_id": "5fee9d59f2f08a1b3cbdea08",
"createdAt": "2020-12-31T02:09:53.914Z",
"updatedAt": "2020-12-31T02:09:53.914Z",
"attention": "Leave at the back door.",
"street2": "ABC Boulevard",
"kind": "TBD",
"phone": {
"number": "123-456-7890",
"kind": "Mobile"
},
"shipTo": {
"shipMethod": {
"shipMethodId": "1a2b3c4d5e6f7g8h9i0j",
"shipmentCarrier": "Fedex",
"shipmentMethod": "Next Day",
"cost": {
"currency": "USD",
"amount": 5.99
}
}
},
"shipToId": 5269,
"cartId": "61e03ff6a865fe00094f8620",
"taxCode": "FR1000",
"shipToType": "SHIP_TO_ADDRESS"
}
}
],
"_id": "5fee9d59f2f08a1b3cbdea08",
"createdAt": "2020-12-31T02:09:53.914Z",
"updatedAt": "2020-12-31T02:09:53.914Z"
}
],
"registeredUser": false,
"cartId": 4,
"totalAmmount\"": {
"currency": "USD",
"amount": 200
},
"quantity": 2,
"__v": 0,
"attributes": [
{
"price": 10,
"_id": "6146e98408e3700008b64611",
"attributeId": "60a77de306f682000975c24c",
"value": "true/false",
"name": "Gift Message",
"type": "<string>",
"id": "6146e98408e3700008b64611"
}
],
"account": "<string>",
"approver": "<string>",
"po": "<string>",
"company": "<string>",
"status": "pending",
"extra": {},
"errors": {
"inventory": "<array>",
"price": "<array>",
"promo": "<array>"
},
"_id": "5fee9d59f2f08a1b3cbdea08",
"createdAt": "2020-12-31T02:09:53.914Z",
"updatedAt": "2020-12-31T02:09:53.914Z"
}
]
}{
"code": "<string>",
"message": "<string>"
}{
"message": "Forbidden"
}{
"code": "<string>",
"message": "<string>"
}Cart
Query on carts
Find a specific carts that matches the filters
POST
/
api-cart
/
cart
/
query
Query on carts
curl --request POST \
--url https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query \
--header 'Content-Type: application/json' \
--header 'x-site-context: <x-site-context>' \
--data '
{
"offset": 0,
"limit": 10,
"filters": {
"date": {
"gte": "2019-12-14T23:20:50.52Z",
"lte": "2019-12-14T23:20:50.52Z"
},
"userId": "<string>",
"approver": "<string>",
"account": "<string>",
"po": "<string>",
"company": "<string>",
"status": [
"pending"
]
}
}
'import requests
url = "https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query"
payload = {
"offset": 0,
"limit": 10,
"filters": {
"date": {
"gte": "2019-12-14T23:20:50.52Z",
"lte": "2019-12-14T23:20:50.52Z"
},
"userId": "<string>",
"approver": "<string>",
"account": "<string>",
"po": "<string>",
"company": "<string>",
"status": ["pending"]
}
}
headers = {
"x-site-context": "<x-site-context>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-site-context': '<x-site-context>', 'Content-Type': 'application/json'},
body: JSON.stringify({
offset: 0,
limit: 10,
filters: {
date: {gte: '2019-12-14T23:20:50.52Z', lte: '2019-12-14T23:20:50.52Z'},
userId: '<string>',
approver: '<string>',
account: '<string>',
po: '<string>',
company: '<string>',
status: ['pending']
}
})
};
fetch('https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query",
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([
'offset' => 0,
'limit' => 10,
'filters' => [
'date' => [
'gte' => '2019-12-14T23:20:50.52Z',
'lte' => '2019-12-14T23:20:50.52Z'
],
'userId' => '<string>',
'approver' => '<string>',
'account' => '<string>',
'po' => '<string>',
'company' => '<string>',
'status' => [
'pending'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-site-context: <x-site-context>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query"
payload := strings.NewReader("{\n \"offset\": 0,\n \"limit\": 10,\n \"filters\": {\n \"date\": {\n \"gte\": \"2019-12-14T23:20:50.52Z\",\n \"lte\": \"2019-12-14T23:20:50.52Z\"\n },\n \"userId\": \"<string>\",\n \"approver\": \"<string>\",\n \"account\": \"<string>\",\n \"po\": \"<string>\",\n \"company\": \"<string>\",\n \"status\": [\n \"pending\"\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-site-context", "<x-site-context>")
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))
}HttpResponse<String> response = Unirest.post("https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query")
.header("x-site-context", "<x-site-context>")
.header("Content-Type", "application/json")
.body("{\n \"offset\": 0,\n \"limit\": 10,\n \"filters\": {\n \"date\": {\n \"gte\": \"2019-12-14T23:20:50.52Z\",\n \"lte\": \"2019-12-14T23:20:50.52Z\"\n },\n \"userId\": \"<string>\",\n \"approver\": \"<string>\",\n \"account\": \"<string>\",\n \"po\": \"<string>\",\n \"company\": \"<string>\",\n \"status\": [\n \"pending\"\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://prod01-apigw.{customer_name}.fabric.zone/api-cart/cart/query")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-site-context"] = '<x-site-context>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"offset\": 0,\n \"limit\": 10,\n \"filters\": {\n \"date\": {\n \"gte\": \"2019-12-14T23:20:50.52Z\",\n \"lte\": \"2019-12-14T23:20:50.52Z\"\n },\n \"userId\": \"<string>\",\n \"approver\": \"<string>\",\n \"account\": \"<string>\",\n \"po\": \"<string>\",\n \"company\": \"<string>\",\n \"status\": [\n \"pending\"\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"query": {
"limit": 10,
"offset": 0,
"count": 1
},
"carts": [
{
"deleted": false,
"allPromosApplied": [
{
"unit": "<string>",
"value": 123,
"ON": {
"kind": "SKU",
"value": ""
},
"id": "<string>",
"promoId": "<string>",
"promoCode": "<string>"
}
],
"items": [
{
"itemId": 1000000012,
"quantity": 2,
"price": {
"currency": "USD",
"base": 15.99,
"discount": {
"price": 10.99,
"discountAmount": 10.99,
"promosApplied": [
{
"unit": "<string>",
"value": 123,
"ON": {
"kind": "SKU",
"value": ""
},
"id": "<string>",
"promoId": "<string>",
"promoCode": "<string>"
}
]
},
"sale": 10.99
},
"group": [
"5ddd1a156c5a5fed1e0d91fb"
],
"priceListId": 100002,
"isUnique": 123,
"discountedQuantity": 0,
"lineItemId": 1,
"totalPrice": {
"currency": "USD",
"amount": 200
},
"id": "5fee9d59f2f08a1b3cbdea08",
"sample": false,
"weightUnit": "kg",
"isPickup": false,
"sku": "blue",
"taxCode": "PH0607",
"title": "item title",
"weight": 7,
"attributeTotalPrice": 0,
"attributes": [
{
"price": 10,
"_id": "6146e98408e3700008b64611",
"attributeId": "60a77de306f682000975c24c",
"value": "true/false",
"name": "Gift Message",
"type": "<string>",
"id": "6146e98408e3700008b64611",
"shipTo": {
"street1": "123 Main Street",
"city": "Seattle",
"state": "WA",
"country": "United States of America",
"zipCode": "10008-1234",
"name": {
"first": "John",
"last": "Smith"
},
"email": "johnsmith@fabric.inc",
"_id": "5fee9d59f2f08a1b3cbdea08",
"createdAt": "2020-12-31T02:09:53.914Z",
"updatedAt": "2020-12-31T02:09:53.914Z",
"attention": "Leave at the back door.",
"street2": "ABC Boulevard",
"kind": "TBD",
"phone": {
"number": "123-456-7890",
"kind": "Mobile"
},
"shipTo": {
"shipMethod": {
"shipMethodId": "1a2b3c4d5e6f7g8h9i0j",
"shipmentCarrier": "Fedex",
"shipmentMethod": "Next Day",
"cost": {
"currency": "USD",
"amount": 5.99
}
}
},
"shipToId": 5269,
"cartId": "61e03ff6a865fe00094f8620",
"taxCode": "FR1000",
"shipToType": "SHIP_TO_ADDRESS"
}
}
],
"_id": "5fee9d59f2f08a1b3cbdea08",
"createdAt": "2020-12-31T02:09:53.914Z",
"updatedAt": "2020-12-31T02:09:53.914Z"
}
],
"registeredUser": false,
"cartId": 4,
"totalAmmount\"": {
"currency": "USD",
"amount": 200
},
"quantity": 2,
"__v": 0,
"attributes": [
{
"price": 10,
"_id": "6146e98408e3700008b64611",
"attributeId": "60a77de306f682000975c24c",
"value": "true/false",
"name": "Gift Message",
"type": "<string>",
"id": "6146e98408e3700008b64611"
}
],
"account": "<string>",
"approver": "<string>",
"po": "<string>",
"company": "<string>",
"status": "pending",
"extra": {},
"errors": {
"inventory": "<array>",
"price": "<array>",
"promo": "<array>"
},
"_id": "5fee9d59f2f08a1b3cbdea08",
"createdAt": "2020-12-31T02:09:53.914Z",
"updatedAt": "2020-12-31T02:09:53.914Z"
}
]
}{
"code": "<string>",
"message": "<string>"
}{
"message": "Forbidden"
}{
"code": "<string>",
"message": "<string>"
}Headers
The x-site-context header is a JSON object that contains information about the source you wish to pull from. The mandatory account is the 24 character identifier found in Copilot. The channel (Sales channel ID), stage (environment name), and date attributes can be used to further narrow the scope of your data source.
Example:
"{\"date\": \"2023-01-01T00:00:00.000Z\", \"channel\": 12, \"account\": \"1234abcd5678efgh9ijklmno\",\"stage\":\"production\"}"
Example:
"0LybWR49k95cCwYh3cu0waCYoh4H2Eux2J52wn4k"
Body
application/json
Was this page helpful?
⌘I
