Introduction
This documentation aims to provide all the information you need to work with our API.
<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>
Authenticating requests
This API is not authenticated.
Address
Get list of address by customer
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/addresses" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/addresses"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create new address for customer
requires authentication
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/addresses" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"John Doe\",
\"email\": \"[email protected]\",
\"phone\": \"0123456789\",
\"country\": \"United States or US\",
\"state\": \"California\",
\"city\": \"Los Angeles\",
\"address\": \"123 Main St\",
\"is_default\": true,
\"zip_code\": \"90001\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/addresses"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "John Doe",
"email": "[email protected]",
"phone": "0123456789",
"country": "United States or US",
"state": "California",
"city": "Los Angeles",
"address": "123 Main St",
"is_default": true,
"zip_code": "90001"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"id": 1,
"name": "John Doe",
"phone": "0123456789",
"email": "[email protected]",
"country": "United States",
"state": "California",
"city": "Los Angeles",
"address": "123 Main St",
"zip_code": "90001",
"is_default": true
},
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update an address
requires authentication
Example request:
curl --request PUT \
"https://shofy.botble.com/api/v1/ecommerce/addresses/1" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"John Doe\",
\"email\": \"[email protected]\",
\"phone\": \"0123456789\",
\"country\": \"United States or US\",
\"state\": \"California\",
\"city\": \"Los Angeles\",
\"address\": \"123 Main St\",
\"is_default\": true,
\"zip_code\": \"90001\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/addresses/1"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "John Doe",
"email": "[email protected]",
"phone": "0123456789",
"country": "United States or US",
"state": "California",
"city": "Los Angeles",
"address": "123 Main St",
"is_default": true,
"zip_code": "90001"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"id": 1,
"name": "John Doe",
"phone": "0123456789",
"email": "[email protected]",
"country": "United States",
"state": "California",
"city": "Los Angeles",
"address": "123 Main St",
"zip_code": "90001",
"is_default": true
},
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete an address
requires authentication
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/ecommerce/addresses/1" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/addresses/1"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": null,
"message": "Address deleted successfully"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get list of available countries
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/countries" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/countries"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": [
{
"name": "Vietnam",
"code": "VN"
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Ads
Get ads
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ads?keys[]=homepage-banner&keys[]=sidebar-banner" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"keys\": [
\"homepage-banner\",
\"sidebar-banner\"
]
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ads"
);
const params = {
"keys[0]": "homepage-banner",
"keys[1]": "sidebar-banner",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"keys": [
"homepage-banner",
"sidebar-banner"
]
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": false,
"data": [],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Authentication
Register
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/register" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"first_name\": \"John\",
\"last_name\": \"Smith\",
\"name\": \"architecto\",
\"email\": \"[email protected]\",
\"password\": \"|]|{+-\",
\"phone\": \"architecto\",
\"password_confirmation\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/register"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"first_name": "John",
"last_name": "Smith",
"name": "architecto",
"email": "[email protected]",
"password": "|]|{+-",
"phone": "architecto",
"password_confirmation": "architecto"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": null,
"message": "Registered successfully! We emailed you to verify your account!"
}
Example response (422):
{
"message": "The given data was invalid.",
"errors": {
"name": [
"The name field is required."
],
"email": [
"The email field is required."
],
"password": [
"The password field is required."
]
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Login
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/login" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"[email protected]\",
\"password\": \"|]|{+-\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/login"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "[email protected]",
"password": "|]|{+-"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"token": "1|aF5s7p3xxx1lVL8hkSrPN72m4wPVpTvTs..."
},
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Check email existing or not
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/email/check" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"[email protected]\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/email/check"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "[email protected]"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"exists": true
},
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Forgot password
Send a reset link to the given user.
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/password/forgot" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"[email protected]\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/password/forgot"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "[email protected]"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Resend email verification
Resend the email verification notification.
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/resend-verify-account-email" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"[email protected]\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/resend-verify-account-email"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "[email protected]"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Logout
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/logout" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/logout"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Blog
Search post
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/search" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"q\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/search"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"q": "architecto"
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"items": [
{
"id": 1,
"title": "Sample Post",
"slug": "sample-post",
"excerpt": "This is a sample post excerpt"
}
],
"query": "sample",
"count": 1
}
}
Example response (400):
{
"error": true,
"message": "No search result"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List posts
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/posts?per_page=16&page=16" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/posts"
);
const params = {
"per_page": "16",
"page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": [
{
"id": 1,
"title": "Sample Post",
"slug": "sample-post",
"excerpt": "This is a sample post excerpt",
"content": "Full post content here...",
"published_at": "2023-01-01T00:00:00.000000Z",
"author": {
"id": 1,
"name": "John Doe"
},
"categories": [],
"tags": []
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List categories
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/categories?per_page=16&page=16" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/categories"
);
const params = {
"per_page": "16",
"page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": [
{
"id": 1,
"name": "Technology",
"slug": "technology",
"description": "Latest tech news and updates",
"created_at": "2023-01-01T00:00:00.000000Z"
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List tags
Filters posts
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/posts/filters?page=16&per_page=16&search=architecto&after=architecto&author=architecto&author_exclude=architecto&before=architecto&exclude=architecto&include=architecto&order=architecto&order_by=architecto&categories=architecto&categories_exclude=architecto&tags=architecto&tags_exclude=architecto&featured=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/posts/filters"
);
const params = {
"page": "16",
"per_page": "16",
"search": "architecto",
"after": "architecto",
"author": "architecto",
"author_exclude": "architecto",
"before": "architecto",
"exclude": "architecto",
"include": "architecto",
"order": "architecto",
"order_by": "architecto",
"categories": "architecto",
"categories_exclude": "architecto",
"tags": "architecto",
"tags_exclude": "architecto",
"featured": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"data": [],
"links": {
"first": "https://shofy.botble.com/api/v1/posts/filters?page=1",
"last": "https://shofy.botble.com/api/v1/posts/filters?page=1",
"prev": "https://shofy.botble.com/api/v1/posts/filters?page=15",
"next": null
},
"meta": {
"current_page": 16,
"from": null,
"last_page": 1,
"links": [
{
"url": "https://shofy.botble.com/api/v1/posts/filters?page=15",
"label": "« Previous",
"page": 15,
"active": false
},
{
"url": "https://shofy.botble.com/api/v1/posts/filters?page=1",
"label": "1",
"page": 1,
"active": false
},
{
"url": null,
"label": "Next »",
"page": null,
"active": false
}
],
"path": "https://shofy.botble.com/api/v1/posts/filters",
"per_page": 16,
"to": null,
"total": 0
},
"error": false,
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get post by slug
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/posts/architecto?slug=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/posts/architecto"
);
const params = {
"slug": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Not found"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Filters categories
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/categories/filters?page=16&per_page=16&search=architecto&order=architecto&order_by=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/categories/filters"
);
const params = {
"page": "16",
"per_page": "16",
"search": "architecto",
"order": "architecto",
"order_by": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": [
{
"id": 1,
"name": "Technology",
"slug": "technology",
"description": "Latest tech news and updates"
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get category by slug
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/categories/architecto?slug=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/categories/architecto"
);
const params = {
"slug": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Not found"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Brands
Get list of brands
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/brands?brands=" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"is_featured\": false
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/brands"
);
const params = {
"brands": "",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"is_featured": false
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"data": [],
"links": {
"first": "https://shofy.botble.com/api/v1/ecommerce/brands?page=1",
"last": "https://shofy.botble.com/api/v1/ecommerce/brands?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": null,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"page": null,
"active": false
},
{
"url": "https://shofy.botble.com/api/v1/ecommerce/brands?page=1",
"label": "1",
"page": 1,
"active": true
},
{
"url": null,
"label": "Next »",
"page": null,
"active": false
}
],
"path": "https://shofy.botble.com/api/v1/ecommerce/brands",
"per_page": 16,
"to": null,
"total": 0
},
"error": false,
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get brand details by slug
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/brands/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/brands/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": ""
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get products by brand
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/brands/1/products" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/brands/1/products"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"data": [
{
"id": 47,
"slug": "sony-a90j-4k-oled-smart-tv",
"url": "https://shofy.botble.com/products/sony-a90j-4k-oled-smart-tv",
"name": "Sony A90J 4K OLED Smart TV",
"sku": "2P-160-A1",
"description": "The headset also offers MS Teams Certifications and other features like Busylight, Calls controls, Voice guiding, and Wireless range (ft): Up to 100 feet. Best-in-class. Boom The most recent Jabra Evolve2 75 USB-A MS Teams Stereo Headset offers professional-grade call performance that leads the industry, yet Evolve2 75 wins best-in-class.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 11,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 259,
"price_formatted": "$259.00",
"original_price": 259,
"original_price_formatted": "$259.00",
"reviews_avg": 2.78,
"reviews_count": 9,
"images": [
"https://shofy.botble.com/storage/main/products/product-18.jpg",
"https://shofy.botble.com/storage/main/products/product-12.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-18-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-12-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-420x270.jpg"
]
},
"weight": 642,
"height": 15,
"wide": 16,
"length": 13,
"image_url": "https://shofy.botble.com/storage/main/products/product-18-150x150.jpg",
"product_options": [],
"store": {
"id": 6,
"slug": "stouffer",
"name": "Stouffer"
}
},
{
"id": 48,
"slug": "apple-tv-4k-2nd-generation-digital",
"url": "https://shofy.botble.com/products/apple-tv-4k-2nd-generation-digital",
"name": "Apple TV 4K (2nd Generation) (Digital)",
"sku": "DH-181-A1",
"description": "It complies with Microsoft's Open Office criteria and is specially tuned for outstanding conversations in open-plan workplaces and other loud environments when the microphone boom arm is lowered in Performance Mode",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 15,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1466.16,
"price_formatted": "$1,466.16",
"original_price": 1788,
"original_price_formatted": "$1,788.00",
"reviews_avg": 2.71,
"reviews_count": 7,
"images": [
"https://shofy.botble.com/storage/main/products/product-2.jpg",
"https://shofy.botble.com/storage/main/products/product-16.jpg",
"https://shofy.botble.com/storage/main/products/product-13.jpg",
"https://shofy.botble.com/storage/main/products/product-12.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-16-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-13-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-12-420x270.jpg"
]
},
"weight": 556,
"height": 19,
"wide": 15,
"length": 13,
"image_url": "https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"product_options": [],
"store": {
"id": 4,
"slug": "global-store",
"name": "Global Store"
}
},
{
"id": 49,
"slug": "roku-ultra-2020-streaming-media-player",
"url": "https://shofy.botble.com/products/roku-ultra-2020-streaming-media-player",
"name": "Roku Ultra 2020 Streaming Media Player",
"sku": "3J-171",
"description": "The headset also offers MS Teams Certifications and other features like Busylight, Calls controls, Voice guiding, and Wireless range (ft): Up to 100 feet. Best-in-class. Boom The most recent Jabra Evolve2 75 USB-A MS Teams Stereo Headset offers professional-grade call performance that leads the industry, yet Evolve2 75 wins best-in-class.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 14,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 778,
"price_formatted": "$778.00",
"original_price": 2284,
"original_price_formatted": "$2,284.00",
"reviews_avg": 2,
"reviews_count": 10,
"images": [
"https://shofy.botble.com/storage/main/products/product-6.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3.jpg",
"https://shofy.botble.com/storage/main/products/product-10.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-6-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg"
]
},
"weight": 835,
"height": 17,
"wide": 20,
"length": 20,
"image_url": "https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"product_options": [],
"store": {
"id": 7,
"slug": "starkist",
"name": "StarKist"
}
},
{
"id": 50,
"slug": "amazon-fire-tv-stick-4k-max",
"url": "https://shofy.botble.com/products/amazon-fire-tv-stick-4k-max",
"name": "Amazon Fire TV Stick 4K Max",
"sku": "RR-179-A1",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 19,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1612,
"price_formatted": "$1,612.00",
"original_price": 1612,
"original_price_formatted": "$1,612.00",
"reviews_avg": 2.88,
"reviews_count": 8,
"images": [
"https://shofy.botble.com/storage/main/products/product-10.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-20.jpg",
"https://shofy.botble.com/storage/main/products/product-2.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3.jpg",
"https://shofy.botble.com/storage/main/products/product-9.jpg",
"https://shofy.botble.com/storage/main/products/product-11.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-20-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-9-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-11-420x270.jpg"
]
},
"weight": 638,
"height": 15,
"wide": 18,
"length": 15,
"image_url": "https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"product_options": [],
"store": {
"id": 1,
"slug": "gopro",
"name": "GoPro"
}
},
{
"id": 51,
"slug": "google-chromecast-with-google-tv",
"url": "https://shofy.botble.com/products/google-chromecast-with-google-tv",
"name": "Google Chromecast with Google TV",
"sku": "QT-198-A1",
"description": "Jabra Evolve2 75 USB-A MS Teams Stereo Headset The Jabra Evolve2 75 USB-A MS Teams Stereo Headset has replaced previous hybrid working standards. Industry-leading call quality thanks to top-notch audio engineering.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 12,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1470,
"price_formatted": "$1,470.00",
"original_price": 1470,
"original_price_formatted": "$1,470.00",
"reviews_avg": 3.13,
"reviews_count": 8,
"images": [
"https://shofy.botble.com/storage/main/products/product-8.jpg",
"https://shofy.botble.com/storage/main/products/product-7.jpg",
"https://shofy.botble.com/storage/main/products/product-3.jpg",
"https://shofy.botble.com/storage/main/products/product-15.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-15-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-15-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-15-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-15-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-8-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-7-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-3-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-15-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-420x270.jpg"
]
},
"weight": 532,
"height": 12,
"wide": 19,
"length": 11,
"image_url": "https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"product_options": [],
"store": {
"id": 1,
"slug": "gopro",
"name": "GoPro"
}
},
{
"id": 52,
"slug": "nvidia-shield-tv-pro-digital",
"url": "https://shofy.botble.com/products/nvidia-shield-tv-pro-digital",
"name": "NVIDIA SHIELD TV Pro (Digital)",
"sku": "4Z-195",
"description": "We can provide exceptional noise isolation and the best all-day comfort by mixing firm foam for the outer with soft foam for the interior of the ear cushions. So that you may receive Active Noise-Cancellation (ANC) performance that is even greater in a headset that you can wear for whatever length you wish.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 13,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1169,
"price_formatted": "$1,169.00",
"original_price": 2313,
"original_price_formatted": "$2,313.00",
"reviews_avg": 3.56,
"reviews_count": 9,
"images": [
"https://shofy.botble.com/storage/main/products/product-1.jpg",
"https://shofy.botble.com/storage/main/products/product-15.jpg",
"https://shofy.botble.com/storage/main/products/product-7.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-15-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-15-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-15-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-15-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-15-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-7-420x270.jpg"
]
},
"weight": 840,
"height": 16,
"wide": 19,
"length": 11,
"image_url": "https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"product_options": [],
"store": {
"id": 1,
"slug": "gopro",
"name": "GoPro"
}
},
{
"id": 53,
"slug": "sonos-beam-gen-2-soundbar",
"url": "https://shofy.botble.com/products/sonos-beam-gen-2-soundbar",
"name": "Sonos Beam Gen 2 Soundbar",
"sku": "9F-104",
"description": "Additionally, this includes a redesigned microphone boom arm that is 33 percent shorter than the Evolve 75 and offers the industry-leading call performance for which Jabra headsets are known.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 20,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 629,
"price_formatted": "$629.00",
"original_price": 2302,
"original_price_formatted": "$2,302.00",
"reviews_avg": 2.7,
"reviews_count": 10,
"images": [
"https://shofy.botble.com/storage/main/products/product-details-desc-2.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg",
"https://shofy.botble.com/storage/main/products/product-14.jpg",
"https://shofy.botble.com/storage/main/products/product-6.jpg",
"https://shofy.botble.com/storage/main/products/product-18.jpg",
"https://shofy.botble.com/storage/main/products/product-20.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-details-desc-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-14-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-6-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-18-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-20-420x270.jpg"
]
},
"weight": 852,
"height": 14,
"wide": 12,
"length": 14,
"image_url": "https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"product_options": [],
"store": {
"id": 5,
"slug": "roberts-store",
"name": "Robert’s Store"
}
},
{
"id": 54,
"slug": "bose-smart-soundbar-900",
"url": "https://shofy.botble.com/products/bose-smart-soundbar-900",
"name": "Bose Smart Soundbar 900",
"sku": "KA-111",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 15,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1894,
"price_formatted": "$1,894.00",
"original_price": 2240,
"original_price_formatted": "$2,240.00",
"reviews_avg": 2.5,
"reviews_count": 6,
"images": [
"https://shofy.botble.com/storage/main/products/product-12.jpg",
"https://shofy.botble.com/storage/main/products/product-10.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg",
"https://shofy.botble.com/storage/main/products/product-20.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-12-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-20-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg"
]
},
"weight": 811,
"height": 12,
"wide": 17,
"length": 11,
"image_url": "https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"product_options": [],
"store": {
"id": 7,
"slug": "starkist",
"name": "StarKist"
}
},
{
"id": 55,
"slug": "jbl-bar-91-soundbar-with-dolby-atmos",
"url": "https://shofy.botble.com/products/jbl-bar-91-soundbar-with-dolby-atmos",
"name": "JBL Bar 9.1 Soundbar with Dolby Atmos",
"sku": "DW-137",
"description": "It complies with Microsoft's Open Office criteria and is specially tuned for outstanding conversations in open-plan workplaces and other loud environments when the microphone boom arm is lowered in Performance Mode",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 19,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 461,
"price_formatted": "$461.00",
"original_price": 500,
"original_price_formatted": "$500.00",
"reviews_avg": 2.78,
"reviews_count": 9,
"images": [
"https://shofy.botble.com/storage/main/products/product-10.jpg",
"https://shofy.botble.com/storage/main/products/product-2.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg",
"https://shofy.botble.com/storage/main/products/product-1.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-420x270.jpg"
]
},
"weight": 667,
"height": 10,
"wide": 19,
"length": 18,
"image_url": "https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"product_options": [],
"store": {
"id": 7,
"slug": "starkist",
"name": "StarKist"
}
},
{
"id": 56,
"slug": "sennheiser-ambeo-soundbar-digital",
"url": "https://shofy.botble.com/products/sennheiser-ambeo-soundbar-digital",
"name": "Sennheiser Ambeo Soundbar (Digital)",
"sku": "QD-118-A1",
"description": "Jabra Evolve2 75 USB-A MS Teams Stereo Headset The Jabra Evolve2 75 USB-A MS Teams Stereo Headset has replaced previous hybrid working standards. Industry-leading call quality thanks to top-notch audio engineering.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 19,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 724.95,
"price_formatted": "$724.95",
"original_price": 895,
"original_price_formatted": "$895.00",
"reviews_avg": 3.22,
"reviews_count": 9,
"images": [
"https://shofy.botble.com/storage/main/products/product-20.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1.jpg",
"https://shofy.botble.com/storage/main/products/product-7.jpg",
"https://shofy.botble.com/storage/main/products/product-18.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-20-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-7-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-18-420x270.jpg"
]
},
"weight": 821,
"height": 13,
"wide": 11,
"length": 12,
"image_url": "https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"product_options": [],
"store": {
"id": 2,
"slug": "global-office",
"name": "Global Office"
}
},
{
"id": 57,
"slug": "sony-ht-a9-home-theater-system",
"url": "https://shofy.botble.com/products/sony-ht-a9-home-theater-system",
"name": "Sony HT-A9 Home Theater System",
"sku": "UL-112-A1",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 18,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1238,
"price_formatted": "$1,238.00",
"original_price": 1238,
"original_price_formatted": "$1,238.00",
"reviews_avg": 3.5,
"reviews_count": 6,
"images": [
"https://shofy.botble.com/storage/main/products/product-11.jpg",
"https://shofy.botble.com/storage/main/products/product-17.jpg",
"https://shofy.botble.com/storage/main/products/product-9.jpg",
"https://shofy.botble.com/storage/main/products/product-10.jpg",
"https://shofy.botble.com/storage/main/products/product-8.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-11-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-17-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-9-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-8-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-3-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg"
]
},
"weight": 584,
"height": 16,
"wide": 12,
"length": 16,
"image_url": "https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"product_options": [],
"store": {
"id": 5,
"slug": "roberts-store",
"name": "Robert’s Store"
}
},
{
"id": 6,
"slug": "dji-mavic-air-2-drone",
"url": "https://shofy.botble.com/products/dji-mavic-air-2-drone",
"name": "DJI Mavic Air 2 Drone",
"sku": "ET-195",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 17,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 686.16,
"price_formatted": "$686.16",
"original_price": 2307,
"original_price_formatted": "$2,307.00",
"reviews_avg": 3.78,
"reviews_count": 9,
"images": [
"https://shofy.botble.com/storage/main/products/product-6.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2.jpg",
"https://shofy.botble.com/storage/main/products/product-12.jpg",
"https://shofy.botble.com/storage/main/products/product-16.jpg",
"https://shofy.botble.com/storage/main/products/product-17.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-6-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-12-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-16-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-17-420x270.jpg"
]
},
"weight": 600,
"height": 20,
"wide": 13,
"length": 18,
"image_url": "https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"product_options": [],
"store": {
"id": 7,
"slug": "starkist",
"name": "StarKist"
}
},
{
"id": 7,
"slug": "gopro-hero9-black-action-camera",
"url": "https://shofy.botble.com/products/gopro-hero9-black-action-camera",
"name": "GoPro HERO9 Black Action Camera",
"sku": "RJ-149",
"description": "We can provide exceptional noise isolation and the best all-day comfort by mixing firm foam for the outer with soft foam for the interior of the ear cushions. So that you may receive Active Noise-Cancellation (ANC) performance that is even greater in a headset that you can wear for whatever length you wish.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 11,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 602.08,
"price_formatted": "$602.08",
"original_price": 1586,
"original_price_formatted": "$1,586.00",
"reviews_avg": 3.88,
"reviews_count": 8,
"images": [
"https://shofy.botble.com/storage/main/products/product-14.jpg",
"https://shofy.botble.com/storage/main/products/product-12.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg",
"https://shofy.botble.com/storage/main/products/product-9.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-14-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-12-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-9-420x270.jpg"
]
},
"weight": 842,
"height": 11,
"wide": 19,
"length": 18,
"image_url": "https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"product_options": [],
"store": {
"id": 6,
"slug": "stouffer",
"name": "Stouffer"
}
},
{
"id": 8,
"slug": "bose-soundlink-revolve-portable-bluetooth-speaker-digital",
"url": "https://shofy.botble.com/products/bose-soundlink-revolve-portable-bluetooth-speaker-digital",
"name": "Bose SoundLink Revolve+ Portable Bluetooth Speaker (Digital)",
"sku": "MD-103",
"description": "We can provide exceptional noise isolation and the best all-day comfort by mixing firm foam for the outer with soft foam for the interior of the ear cushions. So that you may receive Active Noise-Cancellation (ANC) performance that is even greater in a headset that you can wear for whatever length you wish.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 19,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 168.6,
"price_formatted": "$168.60",
"original_price": 1673,
"original_price_formatted": "$1,673.00",
"reviews_avg": 1.86,
"reviews_count": 7,
"images": [
"https://shofy.botble.com/storage/main/products/product-12.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-15.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1.jpg",
"https://shofy.botble.com/storage/main/products/product-2.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-15-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-15-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-15-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-15-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-12-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-15-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-2-420x270.jpg"
]
},
"weight": 725,
"height": 15,
"wide": 12,
"length": 14,
"image_url": "https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"product_options": [],
"store": {
"id": 7,
"slug": "starkist",
"name": "StarKist"
}
},
{
"id": 9,
"slug": "nest-learning-thermostat-3rd-generation",
"url": "https://shofy.botble.com/products/nest-learning-thermostat-3rd-generation",
"name": "Nest Learning Thermostat (3rd Generation)",
"sku": "2Y-158-A1",
"description": "It complies with Microsoft's Open Office criteria and is specially tuned for outstanding conversations in open-plan workplaces and other loud environments when the microphone boom arm is lowered in Performance Mode",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 13,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 937.02,
"price_formatted": "$937.02",
"original_price": 2037,
"original_price_formatted": "$2,037.00",
"reviews_avg": 3,
"reviews_count": 8,
"images": [
"https://shofy.botble.com/storage/main/products/product-2.jpg",
"https://shofy.botble.com/storage/main/products/product-14.jpg",
"https://shofy.botble.com/storage/main/products/product-10.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-6.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-6-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-6-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-14-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-6-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg"
]
},
"weight": 889,
"height": 20,
"wide": 18,
"length": 11,
"image_url": "https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"product_options": [],
"store": {
"id": 6,
"slug": "stouffer",
"name": "Stouffer"
}
},
{
"id": 10,
"slug": "ring-video-doorbell-pro",
"url": "https://shofy.botble.com/products/ring-video-doorbell-pro",
"name": "Ring Video Doorbell Pro",
"sku": "3G-121",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 19,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 456.48,
"price_formatted": "$456.48",
"original_price": 1060,
"original_price_formatted": "$1,060.00",
"reviews_avg": 2.33,
"reviews_count": 9,
"images": [
"https://shofy.botble.com/storage/main/products/product-1.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-12.jpg",
"https://shofy.botble.com/storage/main/products/product-16.jpg",
"https://shofy.botble.com/storage/main/products/product-9.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-12-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-12-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-12-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-16-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-9-420x270.jpg"
]
},
"weight": 871,
"height": 17,
"wide": 15,
"length": 15,
"image_url": "https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"product_options": [],
"store": {
"id": 5,
"slug": "roberts-store",
"name": "Robert’s Store"
}
},
{
"id": 11,
"slug": "amazon-echo-show-10-3rd-gen",
"url": "https://shofy.botble.com/products/amazon-echo-show-10-3rd-gen",
"name": "Amazon Echo Show 10 (3rd Gen)",
"sku": "QL-168-A1",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 11,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1355,
"price_formatted": "$1,355.00",
"original_price": 1355,
"original_price_formatted": "$1,355.00",
"reviews_avg": 3.75,
"reviews_count": 8,
"images": [
"https://shofy.botble.com/storage/main/products/product-11.jpg",
"https://shofy.botble.com/storage/main/products/product-10.jpg",
"https://shofy.botble.com/storage/main/products/product-8.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-13.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-11-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-8-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-13-420x270.jpg"
]
},
"weight": 852,
"height": 20,
"wide": 19,
"length": 17,
"image_url": "https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"product_options": [],
"store": {
"id": 6,
"slug": "stouffer",
"name": "Stouffer"
}
},
{
"id": 12,
"slug": "samsung-qn90a-neo-qled-4k-smart-tv-digital",
"url": "https://shofy.botble.com/products/samsung-qn90a-neo-qled-4k-smart-tv-digital",
"name": "Samsung QN90A Neo QLED 4K Smart TV (Digital)",
"sku": "ZK-134",
"description": "It complies with Microsoft's Open Office criteria and is specially tuned for outstanding conversations in open-plan workplaces and other loud environments when the microphone boom arm is lowered in Performance Mode",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 13,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 128,
"price_formatted": "$128.00",
"original_price": 1076,
"original_price_formatted": "$1,076.00",
"reviews_avg": 2.75,
"reviews_count": 8,
"images": [
"https://shofy.botble.com/storage/main/products/product-13.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-16.jpg",
"https://shofy.botble.com/storage/main/products/product-18.jpg",
"https://shofy.botble.com/storage/main/products/product-7.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-18-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-7-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-18-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-7-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-13-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-16-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-18-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-7-420x270.jpg"
]
},
"weight": 853,
"height": 16,
"wide": 11,
"length": 13,
"image_url": "https://shofy.botble.com/storage/main/products/product-13-150x150.jpg",
"product_options": [],
"store": {
"id": 7,
"slug": "starkist",
"name": "StarKist"
}
},
{
"id": 13,
"slug": "lg-oled-c1-series-4k-smart-tv",
"url": "https://shofy.botble.com/products/lg-oled-c1-series-4k-smart-tv",
"name": "LG OLED C1 Series 4K Smart TV",
"sku": "84-158",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 20,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 402,
"price_formatted": "$402.00",
"original_price": 453,
"original_price_formatted": "$453.00",
"reviews_avg": 3.14,
"reviews_count": 7,
"images": [
"https://shofy.botble.com/storage/main/products/product-20.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-20-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-1-420x270.jpg"
]
},
"weight": 633,
"height": 20,
"wide": 14,
"length": 16,
"image_url": "https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"product_options": [],
"store": {
"id": 6,
"slug": "stouffer",
"name": "Stouffer"
}
},
{
"id": 14,
"slug": "sony-x950h-4k-ultra-hd-smart-led-tv",
"url": "https://shofy.botble.com/products/sony-x950h-4k-ultra-hd-smart-led-tv",
"name": "Sony X950H 4K Ultra HD Smart LED TV",
"sku": "8J-137",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 14,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1129,
"price_formatted": "$1,129.00",
"original_price": 2272,
"original_price_formatted": "$2,272.00",
"reviews_avg": 3.22,
"reviews_count": 9,
"images": [
"https://shofy.botble.com/storage/main/products/product-2.jpg",
"https://shofy.botble.com/storage/main/products/product-13.jpg",
"https://shofy.botble.com/storage/main/products/product-14.jpg",
"https://shofy.botble.com/storage/main/products/product-16.jpg",
"https://shofy.botble.com/storage/main/products/product-8.jpg",
"https://shofy.botble.com/storage/main/products/product-10.jpg",
"https://shofy.botble.com/storage/main/products/product-3.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-3-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-3-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-13-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-10-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-3-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-13-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-10-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-3-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-13-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-14-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-16-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-8-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-10-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-3-420x270.jpg"
]
},
"weight": 622,
"height": 13,
"wide": 19,
"length": 16,
"image_url": "https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"product_options": [],
"store": {
"id": 5,
"slug": "roberts-store",
"name": "Robert’s Store"
}
},
{
"id": 15,
"slug": "apple-watch-series-7",
"url": "https://shofy.botble.com/products/apple-watch-series-7",
"name": "Apple Watch Series 7",
"sku": "UF-188-A1",
"description": "It complies with Microsoft's Open Office criteria and is specially tuned for outstanding conversations in open-plan workplaces and other loud environments when the microphone boom arm is lowered in Performance Mode",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 18,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1995,
"price_formatted": "$1,995.00",
"original_price": 1995,
"original_price_formatted": "$1,995.00",
"reviews_avg": 2.8,
"reviews_count": 10,
"images": [
"https://shofy.botble.com/storage/main/products/product-16.jpg",
"https://shofy.botble.com/storage/main/products/product-11.jpg",
"https://shofy.botble.com/storage/main/products/product-14.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2.jpg",
"https://shofy.botble.com/storage/main/products/product-9.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-14-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-14-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-16-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-11-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-14-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-details-desc-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-9-420x270.jpg"
]
},
"weight": 852,
"height": 16,
"wide": 20,
"length": 16,
"image_url": "https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"product_options": [],
"store": {
"id": 3,
"slug": "young-shop",
"name": "Young Shop"
}
},
{
"id": 16,
"slug": "fitbit-charge-5-fitness-tracker-digital",
"url": "https://shofy.botble.com/products/fitbit-charge-5-fitness-tracker-digital",
"name": "Fitbit Charge 5 Fitness Tracker (Digital)",
"sku": "V8-197-A1",
"description": "With this intelligent headset, you can stay connected and productive from the first call of the day to the last train home. With an ergonomic earcup design, this headset invented a brand-new dual-foam technology. You will be comfortable from the first call to the last thanks to the re-engineered leatherette ear cushion design that allows for better airflow.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 10,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1333.65,
"price_formatted": "$1,333.65",
"original_price": 1569,
"original_price_formatted": "$1,569.00",
"reviews_avg": 3,
"reviews_count": 8,
"images": [
"https://shofy.botble.com/storage/main/products/product-3.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-8.jpg",
"https://shofy.botble.com/storage/main/products/product-19.jpg",
"https://shofy.botble.com/storage/main/products/product-1.jpg",
"https://shofy.botble.com/storage/main/products/product-20.jpg",
"https://shofy.botble.com/storage/main/products/product-17.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-3-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-8-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-19-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-20-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-3-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-8-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-19-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-20-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-3-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-8-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-19-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-20-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-17-420x270.jpg"
]
},
"weight": 721,
"height": 12,
"wide": 17,
"length": 19,
"image_url": "https://shofy.botble.com/storage/main/products/product-3-150x150.jpg",
"product_options": [],
"store": {
"id": 1,
"slug": "gopro",
"name": "GoPro"
}
},
{
"id": 17,
"slug": "garmin-fenix-7x-sapphire-solar-gps-watch",
"url": "https://shofy.botble.com/products/garmin-fenix-7x-sapphire-solar-gps-watch",
"name": "Garmin Fenix 7X Sapphire Solar GPS Watch",
"sku": "0O-130",
"description": "We can provide exceptional noise isolation and the best all-day comfort by mixing firm foam for the outer with soft foam for the interior of the ear cushions. So that you may receive Active Noise-Cancellation (ANC) performance that is even greater in a headset that you can wear for whatever length you wish.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 20,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 1853,
"price_formatted": "$1,853.00",
"original_price": 2142,
"original_price_formatted": "$2,142.00",
"reviews_avg": 2.57,
"reviews_count": 7,
"images": [
"https://shofy.botble.com/storage/main/products/product-2.jpg",
"https://shofy.botble.com/storage/main/products/product-1.jpg",
"https://shofy.botble.com/storage/main/products/product-11.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-11-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-2-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-11-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-2-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-11-420x270.jpg"
]
},
"weight": 756,
"height": 17,
"wide": 20,
"length": 12,
"image_url": "https://shofy.botble.com/storage/main/products/product-2-150x150.jpg",
"product_options": [],
"store": {
"id": 8,
"slug": "old-el-paso",
"name": "Old El Paso"
}
},
{
"id": 18,
"slug": "microsoft-surface-pro-8",
"url": "https://shofy.botble.com/products/microsoft-surface-pro-8",
"name": "Microsoft Surface Pro 8",
"sku": "JE-133-A1",
"description": "We can provide exceptional noise isolation and the best all-day comfort by mixing firm foam for the outer with soft foam for the interior of the ear cushions. So that you may receive Active Noise-Cancellation (ANC) performance that is even greater in a headset that you can wear for whatever length you wish.",
"content": "<div class=\"row justify-content-center\">\n <div class=\"col-xl-10\">\n <div class=\"tp-product-details-desc-item pb-105\">\n <div class=\"row\">\n <div class=\"col-lg-6\">\n <div class=\"pt-25\">\n <span>Galaxy A8 tablet</span>\n <h3 class=\"tp-product-details-desc-title\">Your world at a glance</h3>\n <p>\n With a slim design, a vibrant entertainment system, and <br>\n outstanding performance, the new Galaxy Tab A7 is a stylish new <br>\n companion for your life.Dive head-first into the things you love, <br>\n and easily share your favorite moments. Learn, explore, connect <br>\n and be inspired.\n </p>\n </div>\n <div>\n <h3 class=\"tp-product-details-desc-title\">Draw inspiration with S Pen</h3>\n <p>\n S Pen is a bundle of writing instruments in one. Its natural grip, <br>\n low latency and impressive pressure sensitivity will make it your go-to for everything from drawing to editing documents. And S Pen won't get misplaced thanks.\n </p>\n </div>\n </div>\n <div class=\"col-lg-6\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-1.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item pb-75\">\n <div class=\"row\">\n <div class=\"col-lg-7\">\n <div class=\"tp-product-details-desc-thumb\">\n <img src=\"/storage/main/products/product-details-desc-2.jpg\" alt=\"product\">\n </div>\n </div>\n\n <div class=\"col-lg-5 order-first order-lg-last\">\n <div class=\"des-content-2 pl-40\">\n <h3 class=\"tp-product-details-desc-title\">\n Carry with <br>\n Confidence and style\n </h3>\n <p>\n Wrap your tablet in a sleek case that's as stylish as it is convenient. Galaxy Tab S6 Lite Book Cover folds around and clings magnetically, so you can easily gear up as you're headed out the door. There's even a\n compartment for S pen, so you can be sure it doesn't get left behind.\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"tp-product-details-desc-item\">\n <div class=\"row\">\n <div class=\"col-xl-12\">\n <div class=\"tp-product-details-desc-banner text-center m-img\">\n <h3 class=\"tp-product-details-desc-banner-title tp-product-details-desc-title\">Speed Memory Power = Epic Races</h3>\n <img src=\"/storage/main/products/product-details-desc-3.jpg\" alt=\"product\">\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
"with_storehouse_management": true,
"quantity": 20,
"is_out_of_stock": false,
"stock_status_label": "In stock",
"stock_status_html": "<span class=\"text-success\">In stock</span>",
"price": 2470,
"price_formatted": "$2,470.00",
"original_price": 2470,
"original_price_formatted": "$2,470.00",
"reviews_avg": 3,
"reviews_count": 10,
"images": [
"https://shofy.botble.com/storage/main/products/product-9.jpg",
"https://shofy.botble.com/storage/main/products/product-1.jpg",
"https://shofy.botble.com/storage/main/products/product-16.jpg",
"https://shofy.botble.com/storage/main/products/product-5.jpg",
"https://shofy.botble.com/storage/main/products/product-17.jpg"
],
"images_thumb": [
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg"
],
"image_with_sizes": {
"origin": [
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg"
],
"thumb": [
"https://shofy.botble.com/storage/main/products/product-9-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-1-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-16-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-5-150x150.jpg",
"https://shofy.botble.com/storage/main/products/product-17-150x150.jpg"
],
"medium": [
"https://shofy.botble.com/storage/main/products/product-9-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-1-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-16-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-5-600x600.jpg",
"https://shofy.botble.com/storage/main/products/product-17-600x600.jpg"
],
"rectangle": [
"https://shofy.botble.com/storage/main/products/product-9-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-1-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-16-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-5-420x270.jpg",
"https://shofy.botble.com/storage/main/products/product-17-420x270.jpg"
]
},
"weight": 889,
"height": 12,
"wide": 14,
"length": 18,
"image_url": "https://shofy.botble.com/storage/main/products/product-9-150x150.jpg",
"product_options": [],
"store": {
"id": 4,
"slug": "global-store",
"name": "Global Store"
}
}
],
"links": {
"first": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products?page=1",
"last": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products?page=3",
"prev": null,
"next": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 3,
"links": [
{
"url": null,
"label": "« Previous",
"page": null,
"active": false
},
{
"url": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products?page=1",
"label": "1",
"page": 1,
"active": true
},
{
"url": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products?page=2",
"label": "2",
"page": 2,
"active": false
},
{
"url": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products?page=3",
"label": "3",
"page": 3,
"active": false
},
{
"url": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products?page=2",
"label": "Next »",
"page": 2,
"active": false
}
],
"path": "https://shofy.botble.com/api/v1/ecommerce/brands/1/products",
"per_page": 24,
"to": 24,
"total": 57
},
"error": false,
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Cart
Add product to cart
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/cart" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1,
\"qty\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/cart"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1,
"qty": 1
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add product to cart
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/cart/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1,
\"qty\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/cart/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1,
"qty": 1
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update quantity of a product in cart
Example request:
curl --request PUT \
"https://shofy.botble.com/api/v1/ecommerce/cart/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1,
\"qty\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/cart/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1,
"qty": 1
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove a cart item by its ID.
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/ecommerce/cart/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/cart/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a cart item by id.
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/cart/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"customer_id\": 1,
\"id\": \"e70c6c88dae8344b03e39bb147eba66a\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/cart/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"customer_id": 1,
"id": "e70c6c88dae8344b03e39bb147eba66a"
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"id": "architecto",
"cart_items": [],
"count": 0,
"raw_total": 0,
"raw_total_formatted": "$0.00",
"sub_total": 0,
"sub_total_formatted": "$0.00",
"tax_amount": 0,
"tax_amount_formatted": "$0.00",
"promotion_discount_amount": 0,
"promotion_discount_amount_formatted": "$0.00",
"coupon_discount_amount": 0,
"coupon_discount_amount_formatted": "$0.00",
"applied_coupon_code": null,
"order_total": 0,
"order_total_formatted": "$0.00"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Refresh cart items
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/cart/refresh" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"products\": [
\"architecto\"
]
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/cart/refresh"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"products": [
"architecto"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Calculate tax for products in cart
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/checkout/taxes/calculate" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"products\": [
\"architecto\"
],
\"country\": \"US\",
\"state\": \"CA\",
\"city\": \"Los Angeles\",
\"zip_code\": \"90001\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/checkout/taxes/calculate"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"products": [
"architecto"
],
"country": "US",
"state": "CA",
"city": "Los Angeles",
"zip_code": "90001"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"items": [
{
"product_id": 1,
"price": 100,
"price_formatted": "$100.00",
"quantity": 2,
"tax_rate": 10,
"tax_amount": 20,
"tax_amount_formatted": "$20.00",
"subtotal": 200,
"subtotal_formatted": "$200.00",
"total": 220,
"total_formatted": "$220.00"
}
],
"totals": {
"sub_total": 200,
"sub_total_formatted": "$200.00",
"tax_amount": 20,
"tax_amount_formatted": "$20.00",
"total": 220,
"total_formatted": "$220.00"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Checkout
Process Checkout Process the checkout for a specific cart ID. This endpoint restores the cart, generates an order token, and redirects the user to the checkout page.
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/checkout/cart/12345" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/checkout/cart/12345"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (302):
{}
Example response (302):
Show headers
cache-control: no-cache, private
location: https://shofy.botble.com/checkout/7ced83f5169c72a146b6ba6e5870b564
content-type: text/html; charset=utf-8
x-content-type-options: nosniff
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
referrer-policy: strict-origin-when-cross-origin
access-control-allow-origin: *
set-cookie: botble_session=eyJpdiI6IjM0TTZkZlh4TWtoWUk4ZHVvWWFQVnc9PSIsInZhbHVlIjoiTFNsVlhsTXhvRmIvR3FvdElML2NJN3VPY2krUUcyQ21UNG9nOFdEcXg1ZE53NlhSMk9NWkZNdVgvREdSVS9PcDdUbzN0VFBsbTBlNSt6SnhGVmgzSTdEQk1qNmlEOUo4UkJMTFZsODNkUnhUZ01ZUVNXOWpBdG1FYldCdkRFdmsiLCJtYWMiOiIwNTI4ZmYzMDk2ODA2MzMwNjVjYjFiNjFlNjBiNmZhOTc5MmZhZTBlNTM2NDE2M2MxNWRlOWNmMGYzOWNiYjg0IiwidGFnIjoiIn0%3D; expires=Mon, 22 Sep 2025 03:56:52 GMT; Max-Age=7200; path=/; secure; httponly; samesite=lax; botble_footprints_cookie=eyJpdiI6ImM0M1FEaG85Y0U1YUY3bU9kY3lFckE9PSIsInZhbHVlIjoiK3VFd04wQzI3bFc2eG9jbG5jaVZXL0RpRzNKYldHRHYrdkFpN1ZnOXdCSTMvTUltNzZraUdZZjlYa1FLL3lQaGtJRlRHL2ZremFiOXN4ZHduOXZqNDJwdjg3R0ZyZ1d2QWp2T01vUlo3cTRSY0sybWZ6TFNyWWJqTFJuSVFDZ1ciLCJtYWMiOiJjMjE2M2Y0YTBkM2UxYjA1Mjk4ZmEyNjY5ZGJkNDA1ZTc1MGE2YTdlZTNlNTg4NTVjYTcxMzM0ZTgxOTEwNTI0IiwidGFnIjoiIn0%3D; expires=Mon, 16 Nov 2026 01:56:52 GMT; Max-Age=36288000; path=/; secure; httponly; samesite=lax; botble_footprints_cookie_data=eyJpdiI6ImQ4dUhFNnpRcWJGb1RnNmJmNnE1VHc9PSIsInZhbHVlIjoidXNsMDBxMUVvcHlxV0h1dlFHRUV4eDZiZXVLbnJzYklQNkFjK012dXMrdTEzcE4yMVdXTnFjS0h1amljUXFNYkhGVGlZTGlRZWE5Y1NsOS9YVFVEVlAxR2tVNHBCMkh1SnVoV0I3cjVBL0g4eTA0QWZvdVY5UE5YT2M5VVpBZnZPR3dvdms3eWpZTXM3Qzl4dkMxU0s2LytYS0Y5NCs0NUJZNExvam9ONlkrSHZCc2tKVy9rSEtKQ1Z4TmFqQW53YTBmZ0UzR3ludHg3M1ExQm9RRmhRcVFLcmVlSWpmMXhHSVFNYXd5ckdrUG9SMCtCQWVSOTZGUjhjRWcyWDVQZ1lyUlN3WEx1L1F6bWRHZmk5YTUralZXMFpLWFBOcHE2WnhXMVk4Qkl2UlBTWGp3TUVVS29oZ0t1VE9WdFRnajRtdDhoUjFmQ2xxcjk0U0xSZ3hKZDErNkROejEzWTk0bWp6QUl1ZzF0K1NHUW1ONGY2eHZrZnRCZVk3SGNmdDdueGdKZVVab1o3R00wZlFlOWhnQzFEVm0yamRkTXZka2ZPWDRHajhQVjdiTlZURkxrMkFlTzlsMUlmTnZQZnJBQS8zRG1wWjNPcFpvZ0dEaGFoTVA3UHlJaTErbk5YSkVXZFp3SWUxbFZRL1RISXpPUFMveFhTbFBUUGVlUnFnNHE1NUgvOFFPWURGeWU5aGxUdW54S2VveTJGeThqTlMzaWZjck9aWmFlUVlVPSIsIm1hYyI6ImU5ZGJlMjE4OWFkYjdhOTk5NTQwNDg1ZTM4M2E1NmUyMDFiZTEyMTg3NTkwNWVmMjVlNjEyNzNiNzU4YmViODUiLCJ0YWciOiIifQ%3D%3D; expires=Mon, 16 Nov 2026 01:56:52 GMT; Max-Age=36288000; path=/; secure; httponly; samesite=lax
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta http-equiv="refresh" content="0;url='https://shofy.botble.com/checkout/7ced83f5169c72a146b6ba6e5870b564'" />
<title>Redirecting to https://shofy.botble.com/checkout/7ced83f5169c72a146b6ba6e5870b564</title>
</head>
<body>
Redirecting to <a href="https://shofy.botble.com/checkout/7ced83f5169c72a146b6ba6e5870b564">https://shofy.botble.com/checkout/7ced83f5169c72a146b6ba6e5870b564</a>.
</body>
</html>
Example response (401):
{
"message": "Unauthenticated."
}
Example response (404):
{
"message": "Cart not found."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Compare
Add product to compare
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/compare" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/compare"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add product to compare
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/compare/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/compare/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove a product from compare list
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/ecommerce/compare/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/compare/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get compare items
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/compare/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"id\": \"e70c6c88dae8344b03e39bb147eba66a\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/compare/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"id": "e70c6c88dae8344b03e39bb147eba66a"
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"id": "architecto",
"data": {
"count": 0,
"items": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Coupons
Get all available coupons
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/coupons?coupon_ids=1%2C2%2C3" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/coupons"
);
const params = {
"coupon_ids": "1,2,3",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"data": [
{
"id": 3,
"title": "Discount 3",
"code": "NDYTGAQAUYIT",
"description": null,
"value": 45,
"type_option": "percentage",
"target": "all-orders",
"min_order_price": null,
"min_order_price_formatted": "$0.00",
"start_date": "2025-08-07T16:03:37.000000Z",
"end_date": null,
"quantity": null,
"total_used": 0,
"left_quantity": 0,
"can_use_with_promotion": false,
"can_use_with_flash_sale": false,
"apply_via_url": false,
"display_at_checkout": true,
"is_expired": false
}
],
"error": false,
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Apply coupon code
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/coupon/apply" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"coupon_code\": \"DISCOUNT20\",
\"cart_id\": \"e70c6c88dae8344b03e39bb147eba66a\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/coupon/apply"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"coupon_code": "DISCOUNT20",
"cart_id": "e70c6c88dae8344b03e39bb147eba66a"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove coupon code
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/coupon/remove" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"cart_id\": \"e70c6c88dae8344b03e39bb147eba66a\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/coupon/remove"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"cart_id": "e70c6c88dae8344b03e39bb147eba66a"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Currencies
Get list of available currencies
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/currencies" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/currencies"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": [
{
"id": 1,
"title": "USD",
"symbol": "$",
"is_prefix_symbol": true,
"decimals": 2,
"order": 0,
"is_default": true,
"exchange_rate": 1
},
{
"id": 2,
"title": "EUR",
"symbol": "€",
"is_prefix_symbol": false,
"decimals": 2,
"order": 1,
"is_default": false,
"exchange_rate": 0.91
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get current currency
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/currencies/current" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/currencies/current"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"id": 1,
"title": "USD",
"symbol": "$",
"is_prefix_symbol": true,
"decimals": 2,
"order": 0,
"is_default": true,
"exchange_rate": 1
},
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Device Tokens
Register or update device token
Register a new device token or update an existing one for push notifications.
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/device-tokens" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"token\": \"architecto\",
\"platform\": \"architecto\",
\"app_version\": \"architecto\",
\"device_id\": \"architecto\",
\"user_type\": \"architecto\",
\"user_id\": 16
}"
const url = new URL(
"https://shofy.botble.com/api/v1/device-tokens"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"token": "architecto",
"platform": "architecto",
"app_version": "architecto",
"device_id": "architecto",
"user_type": "architecto",
"user_id": 16
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get user's device tokens
Retrieve all device tokens for the authenticated user.
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/device-tokens" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/device-tokens"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update device token
Update an existing device token.
Example request:
curl --request PUT \
"https://shofy.botble.com/api/v1/device-tokens/564" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"platform\": \"architecto\",
\"app_version\": \"architecto\",
\"device_id\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/device-tokens/564"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"platform": "architecto",
"app_version": "architecto",
"device_id": "architecto"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete device token by token value
Delete a device token using the token value.
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/device-tokens/by-token" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"token\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/device-tokens/by-token"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"token": "architecto"
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete device token
Delete a device token to stop receiving push notifications.
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/device-tokens/564" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/device-tokens/564"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Deactivate device token
Deactivate a device token without deleting it.
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/device-tokens/564/deactivate" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/device-tokens/564/deactivate"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Downloads
Get list of digital products available for download
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/downloads" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/downloads"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Download a digital product
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/downloads/564" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/downloads/564"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Endpoints
Download a file using a token
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/download/architecto/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/download/architecto/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": ""
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Download a proof file using a token
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/orders/download-proof/architecto/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/download-proof/architecto/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "No query results for model [Botble\\Ecommerce\\Models\\Order] architecto"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Filters
Get filter data for products
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/filters" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/filters"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"data": {
"categories": [
{
"id": 1,
"name": "New Arrivals",
"slug": "new-arrivals",
"url": "product-categories/new-arrivals",
"parent_id": 0
},
{
"id": 2,
"name": "Electronics",
"slug": "electronics",
"url": "product-categories/electronics",
"parent_id": 0
},
{
"id": 19,
"name": "Gifts",
"slug": "gifts",
"url": "product-categories/gifts",
"parent_id": 0
},
{
"id": 20,
"name": "Computers",
"slug": "computers",
"url": "product-categories/computers",
"parent_id": 0
},
{
"id": 25,
"name": "Smartphones & Tablets",
"slug": "smartphones-tablets",
"url": "product-categories/smartphones-tablets",
"parent_id": 0
},
{
"id": 26,
"name": "TV,\n Video & Music",
"slug": "tv-video-music",
"url": "product-categories/tv-video-music",
"parent_id": 0
},
{
"id": 27,
"name": "Cameras",
"slug": "cameras",
"url": "product-categories/cameras",
"parent_id": 0
},
{
"id": 28,
"name": "Cooking",
"slug": "cooking",
"url": "product-categories/cooking",
"parent_id": 0
},
{
"id": 29,
"name": "Accessories",
"slug": "accessories",
"url": "product-categories/accessories",
"parent_id": 0
},
{
"id": 31,
"name": "Sports",
"slug": "sports",
"url": "product-categories/sports",
"parent_id": 0
},
{
"id": 32,
"name": "Electronics Gadgets",
"slug": "electronics-gadgets",
"url": "product-categories/electronics-gadgets",
"parent_id": 0
},
{
"id": 3,
"name": "Featured",
"slug": "featured",
"url": "product-categories/featured",
"parent_id": 2
},
{
"id": 7,
"name": "Computers & Laptops",
"slug": "computers-laptops",
"url": "product-categories/computers-laptops",
"parent_id": 2
},
{
"id": 12,
"name": "Accessories",
"slug": "accessories",
"url": "product-categories/accessories",
"parent_id": 2
},
{
"id": 17,
"name": "Gaming Console",
"slug": "gaming-console",
"url": "product-categories/gaming-console",
"parent_id": 2
},
{
"id": 18,
"name": "Playstation",
"slug": "playstation",
"url": "product-categories/playstation",
"parent_id": 2
},
{
"id": 4,
"name": "New Arrivals",
"slug": "new-arrivals",
"url": "product-categories/new-arrivals",
"parent_id": 3
},
{
"id": 5,
"name": "Best Sellers",
"slug": "best-sellers",
"url": "product-categories/best-sellers",
"parent_id": 3
},
{
"id": 6,
"name": "Mobile Phone",
"slug": "mobile-phone",
"url": "product-categories/mobile-phone",
"parent_id": 3
},
{
"id": 8,
"name": "Top Brands",
"slug": "top-brands",
"url": "product-categories/top-brands",
"parent_id": 7
},
{
"id": 9,
"name": "Weekly Best Selling",
"slug": "weekly-best-selling",
"url": "product-categories/weekly-best-selling",
"parent_id": 7
},
{
"id": 10,
"name": "CPU Heat Pipes",
"slug": "cpu-heat-pipes",
"url": "product-categories/cpu-heat-pipes",
"parent_id": 7
},
{
"id": 11,
"name": "CPU Coolers",
"slug": "cpu-coolers",
"url": "product-categories/cpu-coolers",
"parent_id": 7
},
{
"id": 13,
"name": "Headphones",
"slug": "headphones",
"url": "product-categories/headphones",
"parent_id": 12
},
{
"id": 14,
"name": "Wireless Headphones",
"slug": "wireless-headphones",
"url": "product-categories/wireless-headphones",
"parent_id": 12
},
{
"id": 15,
"name": "TWS Earphones",
"slug": "tws-earphones",
"url": "product-categories/tws-earphones",
"parent_id": 12
},
{
"id": 16,
"name": "Smart Watch",
"slug": "smart-watch",
"url": "product-categories/smart-watch",
"parent_id": 12
},
{
"id": 21,
"name": "Desktop",
"slug": "desktop",
"url": "product-categories/desktop",
"parent_id": 20
},
{
"id": 22,
"name": "Laptop",
"slug": "laptop",
"url": "product-categories/laptop",
"parent_id": 20
},
{
"id": 23,
"name": "Tablet",
"slug": "tablet",
"url": "product-categories/tablet",
"parent_id": 20
},
{
"id": 24,
"name": "Accessories",
"slug": "accessories",
"url": "product-categories/accessories",
"parent_id": 20
},
{
"id": 30,
"name": "With Bluetooth",
"slug": "with-bluetooth",
"url": "product-categories/with-bluetooth",
"parent_id": 29
},
{
"id": 33,
"name": "Micrscope",
"slug": "micrscope",
"url": "product-categories/micrscope",
"parent_id": 32
},
{
"id": 34,
"name": "Remote Control",
"slug": "remote-control",
"url": "product-categories/remote-control",
"parent_id": 32
},
{
"id": 35,
"name": "Monitor",
"slug": "monitor",
"url": "product-categories/monitor",
"parent_id": 32
},
{
"id": 36,
"name": "Thermometer",
"slug": "thermometer",
"url": "product-categories/thermometer",
"parent_id": 32
},
{
"id": 37,
"name": "Backpack",
"slug": "backpack",
"url": "product-categories/backpack",
"parent_id": 32
},
{
"id": 38,
"name": "Headphones",
"slug": "headphones",
"url": "product-categories/headphones",
"parent_id": 32
}
],
"brands": [
{
"id": 1,
"name": "FoodPound",
"slug": "foodpound",
"url": "https://shofy.botble.com/products?brands%5B%5D=1",
"products_count": 12
},
{
"id": 2,
"name": "iTea JSC",
"slug": "itea-jsc",
"url": "https://shofy.botble.com/products?brands%5B%5D=2",
"products_count": 9
},
{
"id": 3,
"name": "Soda Brand",
"slug": "soda-brand",
"url": "https://shofy.botble.com/products?brands%5B%5D=3",
"products_count": 15
},
{
"id": 4,
"name": "Shofy",
"slug": "shofy",
"url": "https://shofy.botble.com/products?brands%5B%5D=4",
"products_count": 13
},
{
"id": 5,
"name": "Soda Brand",
"slug": "soda-brand",
"url": "https://shofy.botble.com/products?brands%5B%5D=5",
"products_count": 8
}
],
"tags": [
{
"id": 5,
"name": "Office",
"slug": "office",
"url": "https://shofy.botble.com/products?tags%5B%5D=5",
"products_count": 34
},
{
"id": 3,
"name": "Iphone",
"slug": "iphone",
"url": "https://shofy.botble.com/products?tags%5B%5D=3",
"products_count": 32
},
{
"id": 4,
"name": "Printer",
"slug": "printer",
"url": "https://shofy.botble.com/products?tags%5B%5D=4",
"products_count": 32
},
{
"id": 1,
"name": "Electronic",
"slug": "electronic",
"url": "https://shofy.botble.com/products?tags%5B%5D=1",
"products_count": 28
},
{
"id": 6,
"name": "IT",
"slug": "it",
"url": "https://shofy.botble.com/products?tags%5B%5D=6",
"products_count": 28
},
{
"id": 2,
"name": "Mobile",
"slug": "mobile",
"url": "https://shofy.botble.com/products?tags%5B%5D=2",
"products_count": 17
}
],
"price_ranges": [],
"max_price": 2485,
"current_category_id": 0,
"current_filter_categories": [],
"attributes": [
{
"id": 1,
"title": "Color",
"slug": "color",
"display_layout": "visual",
"attributes": [
{
"id": 1,
"title": "Green",
"slug": "green",
"color": "#5FB7D4",
"image": null,
"is_default": 1,
"is_selected": false
},
{
"id": 2,
"title": "Blue",
"slug": "blue",
"color": "#333333",
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 3,
"title": "Red",
"slug": "red",
"color": "#DA323F",
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 4,
"title": "Black",
"slug": "black",
"color": "#2F366C",
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 5,
"title": "Brown",
"slug": "brown",
"color": "#87554B",
"image": null,
"is_default": 0,
"is_selected": false
}
]
},
{
"id": 3,
"title": "Weight",
"slug": "weight",
"display_layout": "text",
"attributes": [
{
"id": 11,
"title": "1KG",
"slug": "1kg",
"color": null,
"image": null,
"is_default": 1,
"is_selected": false
},
{
"id": 12,
"title": "2KG",
"slug": "2kg",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 13,
"title": "3KG",
"slug": "3kg",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 14,
"title": "4KG",
"slug": "4kg",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 15,
"title": "5KG",
"slug": "5kg",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
}
]
},
{
"id": 2,
"title": "Size",
"slug": "size",
"display_layout": "text",
"attributes": [
{
"id": 6,
"title": "S",
"slug": "s",
"color": null,
"image": null,
"is_default": 1,
"is_selected": false
},
{
"id": 7,
"title": "M",
"slug": "m",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 8,
"title": "L",
"slug": "l",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 9,
"title": "XL",
"slug": "xl",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 10,
"title": "XXL",
"slug": "xxl",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
}
]
},
{
"id": 4,
"title": "Boxes",
"slug": "boxes",
"display_layout": "text",
"attributes": [
{
"id": 16,
"title": "1 Box",
"slug": "1-box",
"color": null,
"image": null,
"is_default": 1,
"is_selected": false
},
{
"id": 17,
"title": "2 Boxes",
"slug": "2-boxes",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 18,
"title": "3 Boxes",
"slug": "3-boxes",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 19,
"title": "4 Boxes",
"slug": "4-boxes",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
},
{
"id": 20,
"title": "5 Boxes",
"slug": "5-boxes",
"color": null,
"image": null,
"is_default": 0,
"is_selected": false
}
]
}
]
},
"error": false,
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Flash Sale
Get flash sales
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/flash-sales?keys=&thumbnail_size=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"keys\": null
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/flash-sales"
);
const params = {
"keys": "",
"thumbnail_size": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"keys": null
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (422):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "The keys field is required."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Languages
Get list of available languages
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/languages" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/languages"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": [
{
"lang_id": 1,
"lang_name": "English",
"lang_locale": "en",
"lang_code": "en_US",
"lang_flag": "<svg ...>",
"lang_is_default": true,
"lang_is_rtl": false,
"lang_order": 0
},
{
"lang_id": 2,
"lang_name": "Vietnamese",
"lang_locale": "vi",
"lang_code": "vi",
"lang_flag": "<svg ...>",
"lang_is_default": false,
"lang_is_rtl": false,
"lang_order": 1
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get current language
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/languages/current" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/languages/current"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"lang_id": 1,
"lang_name": "English",
"lang_locale": "en",
"lang_code": "en_US",
"lang_flag": "us",
"lang_is_default": true,
"lang_is_rtl": false,
"lang_order": 0
},
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Notifications
Get user notifications
Retrieve notifications for the authenticated user.
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/notifications?page=1&per_page=20&unread_only=&type=general" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/notifications"
);
const params = {
"page": "1",
"per_page": "20",
"unread_only": "0",
"type": "general",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get notification statistics
Get notification statistics for the authenticated user.
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/notifications/stats" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/notifications/stats"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Mark all notifications as read
Mark all notifications as read for the authenticated user.
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/notifications/mark-all-read" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/notifications/mark-all-read"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Mark notification as read
Mark a specific notification as read for the authenticated user.
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/notifications/564/read" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/notifications/564/read"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Mark notification as clicked
Mark a notification as clicked when user taps on it.
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/notifications/564/clicked" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/notifications/564/clicked"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete notification
Delete a notification from user's list.
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/notifications/564" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/notifications/564"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Order Returns
Get list of order return requests for the current user
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/order-returns" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/order-returns"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get detail of an order return request
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/order-returns/564" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/order-returns/564"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Submit a new order return request
requires authentication
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/order-returns" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"order_id\": 1,
\"return_items\": [
\"architecto\"
],
\"reason\": \"DAMAGED_PRODUCT\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/order-returns"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"order_id": 1,
"return_items": [
"architecto"
],
"reason": "DAMAGED_PRODUCT"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get order information for return request
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/orders/564/returns" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/564/returns"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Orders
APIs for order tracking
Get list of orders by customer
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/orders?status=completed&shipping_status=delivered&payment_status=completed&per_page=10" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders"
);
const params = {
"status": "completed",
"shipping_status": "delivered",
"payment_status": "completed",
"per_page": "10",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get order detail
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/orders/564" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/564"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Cancel an order
requires authentication
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/orders/564/cancel" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"cancellation_reason\": \"OTHER\",
\"cancellation_reason_description\": \"I found a better deal elsewhere\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/564/cancel"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"cancellation_reason": "OTHER",
"cancellation_reason_description": "I found a better deal elsewhere"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Print an order invoice
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/orders/564/invoice?type=download&format=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/564/invoice"
);
const params = {
"type": "download",
"format": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Upload payment proof for an order
requires authentication
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/orders/564/upload-proof" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "file=@/tmp/php2g97ju02go6nenUwij4"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/564/upload-proof"
);
const headers = {
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('file', document.querySelector('input[name="file"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Download payment proof for an order
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/orders/564/download-proof" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/564/download-proof"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Confirm delivery of an order
requires authentication
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/orders/564/confirm-delivery" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/564/confirm-delivery"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Track an order
Track an order by order code and email/phone
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/orders/tracking" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"code\": \"ORD-12345\",
\"email\": \"[email protected]\",
\"phone\": \"+1234567890\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/orders/tracking"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"code": "ORD-12345",
"email": "[email protected]",
"phone": "+1234567890"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"message": "Order found successfully",
"data": {
"order": {
"id": 1,
"code": "ORD-12345",
"status": "completed",
"amount": 100,
"shipping_amount": 10,
"payment_fee": 5,
"tax_amount": 5,
"sub_total": 90,
"discount_amount": 0,
"payment_id": 1,
"user_id": 1,
"created_at": "2023-08-10T12:34:56.000000Z",
"updated_at": "2023-08-10T12:34:56.000000Z",
"address": {
"id": 1,
"name": "John Doe",
"email": "[email protected]",
"phone": "+1234567890",
"address": "123 Main St",
"city": "New York",
"state": "NY",
"country": "US",
"zip_code": "10001"
},
"products": [
{
"id": 1,
"name": "Product 1",
"price": 90,
"qty": 1
}
],
"histories": [
{
"id": 1,
"action": "create_order",
"description": "Order was created",
"created_at": "2023-08-10T12:34:56.000000Z"
}
],
"shipment": {
"id": 1,
"status": "delivered",
"tracking_id": "SHIP-12345",
"tracking_link": "https://example.com/tracking/SHIP-12345"
},
"payment": {
"id": 1,
"status": "completed",
"payment_channel": "stripe",
"amount": 100
}
}
}
}
Example response (404):
{
"error": true,
"message": "Order not found",
"code": 404
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Page
List pages
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/pages?per_page=16&page=16" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/pages"
);
const params = {
"per_page": "16",
"page": "16",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": [
{
"id": 1,
"title": "About Us",
"slug": "about-us",
"content": "This is the about us page content...",
"published_at": "2023-01-01T00:00:00.000000Z"
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get page by ID
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/pages/16" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/pages/16"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"id": 1,
"title": "About Us",
"slug": "about-us",
"content": "This is the about us page content...",
"published_at": "2023-01-01T00:00:00.000000Z"
},
"message": null
}
Example response (404):
{
"error": true,
"message": "Not found"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Product Categories
Get list of product categories
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/product-categories" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"is_featured\": false
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/product-categories"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"is_featured": false
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"data": [
{
"id": 1,
"name": "New Arrivals",
"icon": "ti ti-home",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "new-arrivals",
"image_with_sizes": null
},
{
"id": 3,
"name": "Featured",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 2,
"slug": "featured",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/menu-1-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/menu-1-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/menu-1-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/menu-1-420x270.jpg"
}
},
{
"id": 4,
"name": "New Arrivals",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 3,
"slug": "new-arrivals",
"image_with_sizes": null
},
{
"id": 8,
"name": "Top Brands",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 7,
"slug": "top-brands",
"image_with_sizes": null
},
{
"id": 21,
"name": "Desktop",
"icon": "ti ti-device-desktop",
"icon_image": null,
"is_featured": false,
"parent_id": 20,
"slug": "desktop",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-5-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-5-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-5-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-5-420x270.jpg"
}
},
{
"id": 33,
"name": "Micrscope",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 32,
"slug": "micrscope",
"image_with_sizes": null
},
{
"id": 2,
"name": "Electronics",
"icon": "ti ti-device-tv",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "electronics",
"image_with_sizes": null
},
{
"id": 5,
"name": "Best Sellers",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 3,
"slug": "best-sellers",
"image_with_sizes": null
},
{
"id": 9,
"name": "Weekly Best Selling",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 7,
"slug": "weekly-best-selling",
"image_with_sizes": null
},
{
"id": 14,
"name": "Wireless Headphones",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 12,
"slug": "wireless-headphones",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-420x270.jpg"
}
},
{
"id": 22,
"name": "Laptop",
"icon": "ti ti-device-laptop",
"icon_image": null,
"is_featured": false,
"parent_id": 20,
"slug": "laptop",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-3-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-3-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-3-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-3-420x270.jpg"
}
},
{
"id": 34,
"name": "Remote Control",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 32,
"slug": "remote-control",
"image_with_sizes": null
},
{
"id": 12,
"name": "Accessories",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 2,
"slug": "accessories",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/menu-3-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/menu-3-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/menu-3-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/menu-3-420x270.jpg"
}
},
{
"id": 15,
"name": "TWS Earphones",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 12,
"slug": "tws-earphones",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-6-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-6-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-6-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-6-420x270.jpg"
}
},
{
"id": 19,
"name": "Gifts",
"icon": "ti ti-gift",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "gifts",
"image_with_sizes": null
},
{
"id": 23,
"name": "Tablet",
"icon": "ti ti-device-tablet",
"icon_image": null,
"is_featured": false,
"parent_id": 20,
"slug": "tablet",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-4-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-4-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-4-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-4-420x270.jpg"
}
},
{
"id": 35,
"name": "Monitor",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 32,
"slug": "monitor",
"image_with_sizes": null
},
{
"id": 11,
"name": "CPU Coolers",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 7,
"slug": "cpu-coolers",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-9-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-9-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-9-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-9-420x270.jpg"
}
},
{
"id": 17,
"name": "Gaming Console",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 2,
"slug": "gaming-console",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-8-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-8-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-8-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-8-420x270.jpg"
}
},
{
"id": 20,
"name": "Computers",
"icon": "ti ti-device-laptop",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "computers",
"image_with_sizes": null
},
{
"id": 24,
"name": "Accessories",
"icon": "ti ti-keyboard",
"icon_image": null,
"is_featured": false,
"parent_id": 20,
"slug": "accessories",
"image_with_sizes": null
},
{
"id": 36,
"name": "Thermometer",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 32,
"slug": "thermometer",
"image_with_sizes": null
},
{
"id": 18,
"name": "Playstation",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 2,
"slug": "playstation",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-12-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-12-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-12-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-12-420x270.jpg"
}
},
{
"id": 25,
"name": "Smartphones & Tablets",
"icon": "ti ti-device-mobile",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "smartphones-tablets",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-10-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-10-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-10-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-10-420x270.jpg"
}
},
{
"id": 37,
"name": "Backpack",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 32,
"slug": "backpack",
"image_with_sizes": null
},
{
"id": 26,
"name": "TV,\n Video & Music",
"icon": "ti ti-device-tv",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "tv-video-music",
"image_with_sizes": null
},
{
"id": 38,
"name": "Headphones",
"icon": null,
"icon_image": null,
"is_featured": false,
"parent_id": 32,
"slug": "headphones",
"image_with_sizes": {
"origin": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-600x600.jpg",
"thumb": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-150x150.jpg",
"medium": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-600x600.jpg",
"rectangle": "https://shofy.botble.com/storage/main/product-categories/category-thumb-1-420x270.jpg"
}
},
{
"id": 27,
"name": "Cameras",
"icon": "ti ti-camera",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "cameras",
"image_with_sizes": null
},
{
"id": 28,
"name": "Cooking",
"icon": "ti ti-grill-spatula",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "cooking",
"image_with_sizes": null
},
{
"id": 29,
"name": "Accessories",
"icon": "ti ti-building-store",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "accessories",
"image_with_sizes": null
},
{
"id": 31,
"name": "Sports",
"icon": "ti ti-ball-football",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "sports",
"image_with_sizes": null
},
{
"id": 32,
"name": "Electronics Gadgets",
"icon": "ti ti-cpu-2",
"icon_image": null,
"is_featured": false,
"parent_id": 0,
"slug": "electronics-gadgets",
"image_with_sizes": null
}
],
"error": false,
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get product category details by slug
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/product-categories/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/product-categories/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": ""
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get products by category
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/product-categories/564/products" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/product-categories/564/products"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "No query results for model [Botble\\Ecommerce\\Models\\ProductCategory] 564"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Products
Get list of products
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/products?sort_by=architecto&price_ranges=%5B%7B%22from%22%3A10%2C%22to%22%3A20%7D%2C%7B%22from%22%3A30%2C%22to%22%3A40%7D%5D&attributes=%5B%7B%22id%22%3A1%2C%22value%22%3A1%7D%2C%7B%22id%22%3A2%2C%22value%22%3A2%7D%5D&thumbnail_size=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/products"
);
const params = {
"sort_by": "architecto",
"price_ranges": "[{"from":10,"to":20},{"from":30,"to":40}]",
"attributes": "[{"id":1,"value":1},{"id":2,"value":2}]",
"thumbnail_size": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"data": [],
"links": {
"first": "https://shofy.botble.com/api/v1/ecommerce/products?page=1",
"last": "https://shofy.botble.com/api/v1/ecommerce/products?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": null,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"page": null,
"active": false
},
{
"url": "https://shofy.botble.com/api/v1/ecommerce/products?page=1",
"label": "1",
"page": 1,
"active": true
},
{
"url": null,
"label": "Next »",
"page": null,
"active": false
}
],
"path": "https://shofy.botble.com/api/v1/ecommerce/products",
"per_page": 24,
"to": null,
"total": 0
},
"error": false,
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get product details by slug
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/products/architecto?thumbnail_size=architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/products/architecto"
);
const params = {
"thumbnail_size": "architecto",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": ""
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get related products
Get cross-sale products for a product
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/products/architecto/cross-sale" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/products/architecto/cross-sale"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": ""
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get product's reviews
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/products/architecto/reviews" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/products/architecto/reviews"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": ""
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get product variation by attributes
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/product-variation/564?attributes=" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"reference_product\": \"architecto\",
\"attributes\": [
\"architecto\"
]
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/product-variation/564"
);
const params = {
"attributes": "",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"reference_product": "architecto",
"attributes": [
"architecto"
]
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Not available"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Profile
Get the user profile information.
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/me" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/me"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update profile
requires authentication
Example request:
curl --request PUT \
"https://shofy.botble.com/api/v1/me" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"first_name\": \"bngz\",
\"last_name\": \"miyv\",
\"name\": \"architecto\",
\"phone\": \"architecto\",
\"dob\": \"architecto\",
\"gender\": \"architecto\",
\"description\": \"Eius et animi quos velit et.\",
\"email\": \"[email protected]\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/me"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"first_name": "bngz",
"last_name": "miyv",
"name": "architecto",
"phone": "architecto",
"dob": "architecto",
"gender": "architecto",
"description": "Eius et animi quos velit et.",
"email": "[email protected]"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update Avatar
requires authentication
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/update/avatar" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--form "avatar=@/tmp/php8sn5kca20dg517xWiyk"
const url = new URL(
"https://shofy.botble.com/api/v1/update/avatar"
);
const headers = {
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('avatar', document.querySelector('input[name="avatar"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update password
requires authentication
Example request:
curl --request PUT \
"https://shofy.botble.com/api/v1/update/password" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"password\": \"|]|{+-\",
\"old_password\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/update/password"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"password": "|]|{+-",
"old_password": "architecto"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get user settings
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/settings" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/settings"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update user settings
requires authentication
Example request:
curl --request PUT \
"https://shofy.botble.com/api/v1/settings" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"biometric_enabled\": false,
\"notification_enabled\": false,
\"language\": \"architecto\",
\"currency\": \"architecto\",
\"theme\": \"architecto\",
\"timezone\": \"America\\/Hermosillo\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/settings"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"biometric_enabled": false,
"notification_enabled": false,
"language": "architecto",
"currency": "architecto",
"theme": "architecto",
"timezone": "America\/Hermosillo"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Reviews
Get list of reviews for the current user
requires authentication
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/reviews" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/reviews"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": true,
"data": null,
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new review
requires authentication
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/reviews" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1,
\"star\": 5,
\"comment\": \"This is a great product! I highly recommend it.\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/reviews"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1,
"star": 5,
"comment": "This is a great product! I highly recommend it."
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a review
requires authentication
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/ecommerce/reviews/564" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/reviews/564"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Simple Slider
Get sliders
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/simple-sliders?keys[]=home-slider&keys[]=product-slider" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"keys\": [
\"home-slider\",
\"product-slider\"
]
}"
const url = new URL(
"https://shofy.botble.com/api/v1/simple-sliders"
);
const params = {
"keys[0]": "home-slider",
"keys[1]": "product-slider",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"keys": [
"home-slider",
"product-slider"
]
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"error": false,
"data": [
{
"id": 1,
"name": "Home slider",
"key": "home-slider",
"description": "The main slider on homepage",
"items": [
{
"id": 1,
"title": "The best tablet Collection 2023",
"description": "Exclusive offer <span>-35%</span> off this week",
"image": "https://shofy.botble.com/storage/main/sliders/slider-1.png",
"link": "/products",
"order": 0,
"background_color": "#115061",
"is_light": 0,
"subtitle": "Starting at <b>$274.00</b>",
"button_label": "Shop Now"
},
{
"id": 2,
"title": "The best note book collection 2023",
"description": "Exclusive offer <span>-10%</span> off this week",
"image": "https://shofy.botble.com/storage/main/sliders/slider-3.png",
"link": "/products",
"order": 1,
"background_color": "#115061",
"is_light": 0,
"subtitle": "Starting at <b>$999.00</b>",
"button_label": "Shop Now"
},
{
"id": 3,
"title": "The best phone collection 2023",
"description": "Exclusive offer <span>-10%</span> off this week",
"image": "https://shofy.botble.com/storage/main/sliders/slider-2.png",
"link": "/products",
"order": 2,
"background_color": "#E3EDF6",
"is_light": 1,
"subtitle": "Starting at <b>$999.00</b>",
"button_label": "Shop Now"
}
]
}
],
"message": null
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Social Login
Apple login
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/auth/apple" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"identityToken\": \"architecto\",
\"guard\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/auth/apple"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"identityToken": "architecto",
"guard": "architecto"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"token": "1|abc123def456...",
"user": {
"id": 1,
"name": "John Doe",
"email": "[email protected]"
}
},
"message": "Login successful"
}
Example response (400):
{
"error": true,
"message": "Invalid Apple token"
}
Example response (400):
{
"error": true,
"message": "Cannot login, no email or Apple ID provided!"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Google login
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/auth/google" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"identityToken\": \"architecto\",
\"guard\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/auth/google"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"identityToken": "architecto",
"guard": "architecto"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"token": "1|abc123def456...",
"user": {
"id": 1,
"name": "John Doe",
"email": "[email protected]"
}
},
"message": "Login successful"
}
Example response (400):
{
"error": true,
"message": "Invalid Google token"
}
Example response (400):
{
"error": true,
"message": "Google authentication is not properly configured"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Facebook login
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/auth/facebook" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"accessToken\": \"architecto\",
\"guard\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/auth/facebook"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"accessToken": "architecto",
"guard": "architecto"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"token": "1|abc123def456...",
"user": {
"id": 1,
"name": "John Doe",
"email": "[email protected]"
}
},
"message": "Login successful"
}
Example response (400):
{
"error": true,
"message": "Invalid Facebook token"
}
Example response (400):
{
"error": true,
"message": "Facebook authentication is not properly configured"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
X (Twitter) login
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/auth/x" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"accessToken\": \"architecto\",
\"guard\": \"architecto\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/auth/x"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"accessToken": "architecto",
"guard": "architecto"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"token": "1|abc123def456...",
"user": {
"id": 1,
"name": "John Doe",
"email": "[email protected]"
}
},
"message": "Login successful"
}
Example response (400):
{
"error": true,
"message": "Invalid X (Twitter) token"
}
Example response (400):
{
"error": true,
"message": "X (Twitter) authentication is not properly configured"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Wishlist
Add product to wishlist
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/wishlist" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/wishlist"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Add product to wishlist
Example request:
curl --request POST \
"https://shofy.botble.com/api/v1/ecommerce/wishlist/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/wishlist/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Remove a product from wishlist
Example request:
curl --request DELETE \
"https://shofy.botble.com/api/v1/ecommerce/wishlist/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"product_id\": 1
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/wishlist/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"product_id": 1
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get wishlist items
Example request:
curl --request GET \
--get "https://shofy.botble.com/api/v1/ecommerce/wishlist/architecto" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"id\": \"e70c6c88dae8344b03e39bb147eba66a\"
}"
const url = new URL(
"https://shofy.botble.com/api/v1/ecommerce/wishlist/architecto"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"id": "e70c6c88dae8344b03e39bb147eba66a"
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"id": "architecto",
"data": {
"count": 0,
"items": []
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.