Get products in a collection
curl --request GET \
--url https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products', 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://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"results": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"name": "My t-shirt",
"slug": "my-t-shirt",
"description": "My t-shirt description",
"type": "STANDARD",
"state": {
"type": "AVAILABLE"
},
"access": {
"type": "ARCHIVED"
},
"images": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
}
],
"variants": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"name": "My t-shirt - Black, L",
"sku": "WDEK-DRE200L",
"unitPrice": {
"value": 10,
"currency": "USD"
},
"attributes": {
"description": "Black, L",
"color": {
"name": "Black",
"swatch": "#000000"
},
"size": {
"name": "L"
}
},
"stock": {
"type": "LIMITED",
"inStock": 5
},
"weight": {
"value": 1,
"unit": "kg"
},
"dimensions": {
"length": 1,
"width": 2,
"height": 3,
"unit": "cm"
},
"images": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
}
],
"compareAtPrice": {
"value": 10,
"currency": "USD"
},
"unitCost": {
"value": 10,
"currency": "USD"
},
"creatorDeclaredCost": {
"value": 10,
"currency": "USD"
},
"thumbnailImage": {
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
}
}
],
"createdAt": "2020-08-13T09:05:36.939Z",
"updatedAt": "2020-08-13T09:05:36.939Z",
"thumbnailImage": {
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
},
"additionalInformation": {
"sizeAndFit": "<string>",
"guaranteeAndReturns": "<string>",
"moreDetails": "<string>"
},
"sizeGuide": {
"fitGuideUrls": [
"<string>"
],
"previewUrl": "<string>",
"fileUrl": "<string>",
"description": "<string>",
"fitGuideDescription": "<string>"
},
"digitalFiles": [
{
"uri": "https://storage.googleapis.com/bucket/shop/offer/file",
"name": "my-ebook.pdf",
"fileSize": "15.4 MB",
"mediaType": "application/pdf"
}
]
}
],
"total": 123,
"page": 123,
"size": 123,
"totalPages": 123
}Collections
Get products in a collection
Rate limit: 100 requests / 10 seconds per shop. See Rate limiting.
Returns paginated products in a collection with optional status filtering. The maximum page size is 100 - larger values are capped at 100.
GET
/
open-api
/
v1.0
/
collections
/
{collectionId}
/
products
Get products in a collection
curl --request GET \
--url https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products', 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://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fourthwall.com/open-api/v1.0/collections/{collectionId}/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"results": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"name": "My t-shirt",
"slug": "my-t-shirt",
"description": "My t-shirt description",
"type": "STANDARD",
"state": {
"type": "AVAILABLE"
},
"access": {
"type": "ARCHIVED"
},
"images": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
}
],
"variants": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"name": "My t-shirt - Black, L",
"sku": "WDEK-DRE200L",
"unitPrice": {
"value": 10,
"currency": "USD"
},
"attributes": {
"description": "Black, L",
"color": {
"name": "Black",
"swatch": "#000000"
},
"size": {
"name": "L"
}
},
"stock": {
"type": "LIMITED",
"inStock": 5
},
"weight": {
"value": 1,
"unit": "kg"
},
"dimensions": {
"length": 1,
"width": 2,
"height": 3,
"unit": "cm"
},
"images": [
{
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
}
],
"compareAtPrice": {
"value": 10,
"currency": "USD"
},
"unitCost": {
"value": 10,
"currency": "USD"
},
"creatorDeclaredCost": {
"value": 10,
"currency": "USD"
},
"thumbnailImage": {
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
}
}
],
"createdAt": "2020-08-13T09:05:36.939Z",
"updatedAt": "2020-08-13T09:05:36.939Z",
"thumbnailImage": {
"id": "00aa4abd-5778-4199-8161-0b49b2f212e5",
"url": "https://fourthwall.com/image.png",
"width": 800,
"height": 600,
"transformedUrl": "https://fourthwall.com/image.png"
},
"additionalInformation": {
"sizeAndFit": "<string>",
"guaranteeAndReturns": "<string>",
"moreDetails": "<string>"
},
"sizeGuide": {
"fitGuideUrls": [
"<string>"
],
"previewUrl": "<string>",
"fileUrl": "<string>",
"description": "<string>",
"fitGuideDescription": "<string>"
},
"digitalFiles": [
{
"uri": "https://storage.googleapis.com/bucket/shop/offer/file",
"name": "my-ebook.pdf",
"fileSize": "15.4 MB",
"mediaType": "application/pdf"
}
]
}
],
"total": 123,
"page": 123,
"size": 123,
"totalPages": 123
}OAuth scope:
offer_readAPI keys have full access to this endpoint.Authorizations
oauthbasicAuth
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
Query Parameters
Number of elements per page. The maximum page size is 100 - larger values are capped at 100.
Filter by product status Filter for product status in a collection
Available options:
PUBLIC, AVAILABLE, SOLD_OUT, HIDDEN, ARCHIVED