Node.js
import Shoply from "@shoplygg/node";
const shoply = new Shoply({ apiKey: process.env.SHOPLY_API_KEY });
const result = await shoply.storefronts.export("STOREFRONT_ID");<?php
require 'vendor/autoload.php';
$shoply = new Shoply\Client(['apiKey' => getenv('SHOPLY_API_KEY')]);
$result = $shoply->storefronts->export('STOREFRONT_ID');
import shoply
client = shoply.Client() # reads SHOPLY_API_KEY
result = client.storefronts.export("STOREFRONT_ID")
curl --request GET \
--url https://api.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export \
--header 'Authorization: Bearer <token>'package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export"
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.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export")
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{
"success": true,
"message": null,
"code": null,
"data": {
"filename": "autumn-look-second-go.zip",
"storefront": {
"kind": "shoply-storefront",
"format": 1,
"exportedAt": "2026-10-22T16:20:20Z",
"name": "Autumn look, second go",
"theme": "keystone",
"design": {
"version": 1,
"theme": {
"accent": "",
"accentText": "",
"page": "",
"cards": "",
"text": "",
"muted": "",
"border": "",
"tintArt": true,
"headingFont": "",
"bodyFont": "",
"headingWeight": "700",
"radius": "lg",
"buttonRadius": "inherit",
"pageWidth": 1280,
"motion": true,
"customCss": ""
},
"announcement": {
"enabled": false,
"text": "Free delivery on every order.",
"icon": "megaphone",
"link": "",
"bg": "",
"color": "",
"dismissible": true
},
"header": {
"showLogo": true,
"logo": "",
"logoSize": 30,
"showName": true,
"categoriesMenu": true,
"categoriesLabel": "Categories",
"nav": [
{
"label": "Status",
"link": "/status",
"icon": "activity"
},
{
"label": "Reviews",
"link": "/reviews",
"icon": "star"
}
],
"featured": true,
"showBlog": true,
"showOnline": true,
"showSearch": true,
"showCart": true,
"showAccount": true,
"accountLabel": "My orders"
},
"footer": {
"showLogo": true,
"showName": true,
"tagline": "Digital products, delivered instantly",
"about": "Secure checkout, instant delivery and real people when you need a hand.",
"columns": [
{
"title": "Store",
"links": [
{
"label": "All products",
"link": "/products"
},
{
"label": "Status",
"link": "/status"
}
]
}
],
"legalTitle": "Legal",
"policies": true,
"privacy": "",
"help": true,
"helpTitle": "Need help?",
"helpText": "We're here to help. Get in touch and we'll answer as soon as we can.",
"helpLabel": "Contact support",
"helpLink": "",
"directory": true,
"socials": [],
"copyright": ""
},
"cart": {
"openOnAdd": false,
"bar": true,
"showImages": true,
"title": "Your cart",
"checkoutLabel": "Checkout",
"note": "Secure checkout. Your order is delivered instantly.",
"emptyText": "Your cart is empty",
"emptyLinkLabel": "Browse products",
"emptyLink": "/products"
},
"pages": [
{
"id": "home",
"kind": "home",
"name": "Home",
"path": "/",
"title": "",
"description": "",
"hideHeader": false,
"hideFooter": false,
"sections": [
{
"id": "khero001",
"type": "ks-hero",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "full",
"align": "left",
"mt": 0,
"mb": 0,
"pt": 0,
"pb": 0,
"gap": 16,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kherob01",
"type": "ks-hero",
"hidden": false,
"props": {
"badge": true,
"badgeText": "Trusted by thousands of happy customers",
"badgeIcon": "star",
"badgeLink": "/reviews",
"title": "*Premium* digital products,\ndelivered instantly",
"subtitle": "Instant delivery · Secure checkout · Real support",
"search": true,
"searchPlaceholder": "Search for products...",
"shortcuts": [
{
"icon": "layout-grid",
"label": "Products",
"link": "/products"
},
{
"icon": "activity",
"label": "Status",
"link": "/status"
}
],
"image": "",
"tint": false,
"strength": 40,
"fullScreen": true,
"scrollHint": true,
"specks": true,
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
},
{
"id": "kcats001",
"type": "categories",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "default",
"align": "center",
"mt": 0,
"mb": 0,
"pt": 48,
"pb": 48,
"gap": 32,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kcatsh01",
"type": "heading",
"hidden": false,
"props": {
"text": "Shop by category",
"level": "h2",
"highlight": "",
"size": 36,
"mobileSize": 0,
"weight": "700",
"font": "",
"color": "",
"lineHeight": 0,
"letterSpacing": 0,
"transform": "none",
"align": "center",
"maxWidth": 0,
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
},
{
"id": "kcatsb01",
"type": "categories",
"hidden": false,
"props": {
"which": "all",
"categories": [],
"limit": 8,
"showCount": true,
"showPrice": true,
"viewAll": true,
"viewAllLabel": "View all categories",
"columns": "4",
"mobileColumns": "2",
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
}
]
},
{
"id": "products",
"kind": "products",
"name": "All products",
"path": "/products",
"title": "",
"description": "",
"hideHeader": false,
"hideFooter": false,
"sections": [
{
"id": "kphead01",
"type": "page-header",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "default",
"align": "left",
"mt": 0,
"mb": 0,
"pt": 24,
"pb": 8,
"gap": 16,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kpheab01",
"type": "ks-page-header",
"hidden": false,
"props": {
"breadcrumbs": true,
"title": "{page}",
"text": "Everything in the store, delivered the moment you pay.",
"level": "h1",
"image": "",
"tint": false,
"strength": 100,
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
},
{
"id": "kstore01",
"type": "catalogue",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "default",
"align": "left",
"mt": 0,
"mb": 0,
"pt": 16,
"pb": 16,
"gap": 16,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kstoreb1",
"type": "catalogue",
"hidden": false,
"props": {
"search": true,
"searchPlaceholder": "Search products or categories...",
"showCount": true,
"showPrice": true,
"columns": "6",
"mobileColumns": "2",
"filters": true,
"featured": true,
"views": true,
"perPage": 12,
"empty": "No products found",
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
}
]
}
]
},
"files": null
}
}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}Storefronts
Export a storefront
A storefront to keep, work on or hand on: its design, and every file of its code when it has code of its own, as text. storefront in the answer is what “Import a storefront” takes.
Needs the storefronts.read permission (Read Storefronts). It is one of the heavier reads, and is counted against a smaller budget of its own: 60 a minute for each key.
GET
/
stores
/
{storeId}
/
storefronts
/
{storefrontId}
/
export
Node.js
import Shoply from "@shoplygg/node";
const shoply = new Shoply({ apiKey: process.env.SHOPLY_API_KEY });
const result = await shoply.storefronts.export("STOREFRONT_ID");<?php
require 'vendor/autoload.php';
$shoply = new Shoply\Client(['apiKey' => getenv('SHOPLY_API_KEY')]);
$result = $shoply->storefronts->export('STOREFRONT_ID');
import shoply
client = shoply.Client() # reads SHOPLY_API_KEY
result = client.storefronts.export("STOREFRONT_ID")
curl --request GET \
--url https://api.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export \
--header 'Authorization: Bearer <token>'package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export"
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.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.shoply.gg/v1/stores/{storeId}/storefronts/{storefrontId}/export")
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{
"success": true,
"message": null,
"code": null,
"data": {
"filename": "autumn-look-second-go.zip",
"storefront": {
"kind": "shoply-storefront",
"format": 1,
"exportedAt": "2026-10-22T16:20:20Z",
"name": "Autumn look, second go",
"theme": "keystone",
"design": {
"version": 1,
"theme": {
"accent": "",
"accentText": "",
"page": "",
"cards": "",
"text": "",
"muted": "",
"border": "",
"tintArt": true,
"headingFont": "",
"bodyFont": "",
"headingWeight": "700",
"radius": "lg",
"buttonRadius": "inherit",
"pageWidth": 1280,
"motion": true,
"customCss": ""
},
"announcement": {
"enabled": false,
"text": "Free delivery on every order.",
"icon": "megaphone",
"link": "",
"bg": "",
"color": "",
"dismissible": true
},
"header": {
"showLogo": true,
"logo": "",
"logoSize": 30,
"showName": true,
"categoriesMenu": true,
"categoriesLabel": "Categories",
"nav": [
{
"label": "Status",
"link": "/status",
"icon": "activity"
},
{
"label": "Reviews",
"link": "/reviews",
"icon": "star"
}
],
"featured": true,
"showBlog": true,
"showOnline": true,
"showSearch": true,
"showCart": true,
"showAccount": true,
"accountLabel": "My orders"
},
"footer": {
"showLogo": true,
"showName": true,
"tagline": "Digital products, delivered instantly",
"about": "Secure checkout, instant delivery and real people when you need a hand.",
"columns": [
{
"title": "Store",
"links": [
{
"label": "All products",
"link": "/products"
},
{
"label": "Status",
"link": "/status"
}
]
}
],
"legalTitle": "Legal",
"policies": true,
"privacy": "",
"help": true,
"helpTitle": "Need help?",
"helpText": "We're here to help. Get in touch and we'll answer as soon as we can.",
"helpLabel": "Contact support",
"helpLink": "",
"directory": true,
"socials": [],
"copyright": ""
},
"cart": {
"openOnAdd": false,
"bar": true,
"showImages": true,
"title": "Your cart",
"checkoutLabel": "Checkout",
"note": "Secure checkout. Your order is delivered instantly.",
"emptyText": "Your cart is empty",
"emptyLinkLabel": "Browse products",
"emptyLink": "/products"
},
"pages": [
{
"id": "home",
"kind": "home",
"name": "Home",
"path": "/",
"title": "",
"description": "",
"hideHeader": false,
"hideFooter": false,
"sections": [
{
"id": "khero001",
"type": "ks-hero",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "full",
"align": "left",
"mt": 0,
"mb": 0,
"pt": 0,
"pb": 0,
"gap": 16,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kherob01",
"type": "ks-hero",
"hidden": false,
"props": {
"badge": true,
"badgeText": "Trusted by thousands of happy customers",
"badgeIcon": "star",
"badgeLink": "/reviews",
"title": "*Premium* digital products,\ndelivered instantly",
"subtitle": "Instant delivery · Secure checkout · Real support",
"search": true,
"searchPlaceholder": "Search for products...",
"shortcuts": [
{
"icon": "layout-grid",
"label": "Products",
"link": "/products"
},
{
"icon": "activity",
"label": "Status",
"link": "/status"
}
],
"image": "",
"tint": false,
"strength": 40,
"fullScreen": true,
"scrollHint": true,
"specks": true,
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
},
{
"id": "kcats001",
"type": "categories",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "default",
"align": "center",
"mt": 0,
"mb": 0,
"pt": 48,
"pb": 48,
"gap": 32,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kcatsh01",
"type": "heading",
"hidden": false,
"props": {
"text": "Shop by category",
"level": "h2",
"highlight": "",
"size": 36,
"mobileSize": 0,
"weight": "700",
"font": "",
"color": "",
"lineHeight": 0,
"letterSpacing": 0,
"transform": "none",
"align": "center",
"maxWidth": 0,
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
},
{
"id": "kcatsb01",
"type": "categories",
"hidden": false,
"props": {
"which": "all",
"categories": [],
"limit": 8,
"showCount": true,
"showPrice": true,
"viewAll": true,
"viewAllLabel": "View all categories",
"columns": "4",
"mobileColumns": "2",
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
}
]
},
{
"id": "products",
"kind": "products",
"name": "All products",
"path": "/products",
"title": "",
"description": "",
"hideHeader": false,
"hideFooter": false,
"sections": [
{
"id": "kphead01",
"type": "page-header",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "default",
"align": "left",
"mt": 0,
"mb": 0,
"pt": 24,
"pb": 8,
"gap": 16,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kpheab01",
"type": "ks-page-header",
"hidden": false,
"props": {
"breadcrumbs": true,
"title": "{page}",
"text": "Everything in the store, delivered the moment you pay.",
"level": "h1",
"image": "",
"tint": false,
"strength": 100,
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
},
{
"id": "kstore01",
"type": "catalogue",
"hidden": false,
"props": {
"name": "",
"anchor": "",
"width": "default",
"align": "left",
"mt": 0,
"mb": 0,
"pt": 16,
"pb": 16,
"gap": 16,
"minHeight": 0,
"valign": "center",
"boxed": false,
"radius": "inherit",
"border": true,
"shadow": false,
"bg": "none",
"bgColor": "#12151c",
"bgColor2": "#2563eb",
"angle": 135,
"bgImage": "",
"bgSize": "cover",
"overlay": "#000000",
"overlayOpacity": 40,
"effect": "none",
"textColor": "",
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
},
"blocks": [
{
"id": "kstoreb1",
"type": "catalogue",
"hidden": false,
"props": {
"search": true,
"searchPlaceholder": "Search products or categories...",
"showCount": true,
"showPrice": true,
"columns": "6",
"mobileColumns": "2",
"filters": true,
"featured": true,
"views": true,
"perPage": 12,
"empty": "No products found",
"mt": 0,
"mb": 0,
"hideDesktop": false,
"hideTablet": false,
"hideMobile": false
}
}
]
}
]
}
]
},
"files": null
}
}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}Authorizations
A secret API key, made under Developers in the dashboard: Authorization: Bearer shoply_sk_...
Path Parameters
The store's ID. A key reaches the store it was made in: GET /key answers which.
The storefront.

