Products
Products are the fundamental resource to your storefront, allowing you to sell your digital goods.
The Product object
The product object contains all the information about a product.
Properties
- Name
id
- Type
- string
- Description
Unique identifier for the product.
- Name
title
- Type
- string
- Description
The display title of the product.
- Name
description
- Type
- string
- Description
The raw markdown description of the product.
- Name
stock
- Type
- integer/string
- Description
Current product stock count from the
info
attribute.Will return a string of∞
if product_type isfile
(unlessstock_amount
is set),dynamic
orservice
- Name
price
- Type
- float
- Description
Price of the product in the currency for 1
quantity
.
- Name
currency
- Type
- string
- Description
The ISO 4217 currency code used during checkout for this product.
- Name
product_type
- Type
- enum
- Description
The type of product goods. Possible types are:
file
serials
dynamic
service
- Name
gateways
- Type
- array
- Description
Array of enabled payment gateways for this product. Available payment gateways are:
paypal
stripe
cashapp
bitcoin
ethereum
litecoin
bitcoin_cash
perfect_money
skrill
dogecoin
bnb
polygon
- Name
image
- Type
- object
- Description
- Display image of the product.
- Name
id
- Type
- string
- Description
Unique identifier for the image file.
- Name
url
- Type
- string
- Description
URL to the image hosted on Selly
- Name
metadata
- Type
- object
- Description
- Extra metadata for the file.
- Name
size
- Type
- integer
- Description
Size of the file in bytes.
- Name
filename
- Type
- string
- Description
File name of the file, including the extension.
- Name
mime_type
- Type
- string
- Description
MIME type of the file.
- Name
info
- Type
- string
- Description
The "goods" for the stock of the product. For a
product_type
ofserials
, this string is delimited by thestock_delimiter
attribute.
- Name
file
- Type
- object
- Description
- File if product type is
file
.- Name
id
- Type
- string
- Description
Unique identifier for the image file.
- Name
url
- Type
- string
- Description
URL to the image hosted on Selly
- Name
metadata
- Type
- object
- Description
- Extra metadata for the file.
- Name
size
- Type
- integer
- Description
Size of the file in bytes.
- Name
filename
- Type
- string
- Description
File name of the file, including the extension.
- Name
mime_type
- Type
- string
- Description
MIME type of the file.
- Name
stock_delimiter
- Type
- string
- Description
The delimiter used to split stock from the
info
attribute. Defaults to a comma.
- Name
maximum_quantity
- Type
- integer
- Description
Maximum quantity an order can have. Defaults to
null
, meaning the max quantity will be as high as the stock count.
- Name
minimum_quantity
- Type
- integer
- Description
Minimum quantity an order can have. Defaults to
1
.
- Name
stock_amount
- Type
- integer
- Description
Limit the stock to this amount if the
product_type
isfile
. Ifnull
, the stock is unlimited.
- Name
dynamic_url
- Type
- string
- Description
The dynamic URL that is called to generate the sold goods, if the
product_type
isdynamic
.
- Name
custom
- Type
- array
- Description
- Custom input fields for the checkout form.
- Name
type
- Type
- enum
- Description
The type of input. Available input options are:
select
number
text
hidden
textarea
checkbox
country_dropdown
- Name
name
- Type
- string
- Description
The name of the custom input field.
- Name
required
- Type
- boolean
- Description
Whether the input is required or not.
- Name
customer_details_required
- Type
- boolean
- Description
Require customer's name and address in the checkout form.
- Name
warranty
- Type
- string
- Description
The warranty description/text sent to the customer.
- Name
warranty_duration
- Type
- integer
- Description
Duration to set the warranty in seconds.
- Name
redirect_url
- Type
- string
- Description
Optional custom redirection URL after a successful checkout.
- Name
unlisted
- Type
- boolean
- Description
This product will not be listed on your storefront, but can still be accessed directly via the product link.
- Name
private
- Type
- boolean
- Description
This product will not be listed or accessible.
- Name
hide_stock
- Type
- boolean
- Description
The exact product stock amount will be hidden and instead show "in stock" or "out of stock".
- Name
created_at
- Type
- timestamp
- Description
Timestamp of when the product was created.
- Name
updated_at
- Type
- timestamp
- Description
Timestamp of when the product was last updated.
List all products
This endpoint allows you to retrieve a paginated list of all your products. By default, a maximum of 20 products are shown per page.
Optional attributes
- Name
page
- Type
- integer
- Description
The page number. Defaults to 1
- Name
per_page
- Type
- integer
- Description
Records per page. Defaults to 20.
Request
curl -G https://selly.io/api/v2/products \
-H "Authorization: Bearer {token}" \
-d page=1
Response
[
{
"id": "8069720f",
"title": "This is an example product",
"description": "**An example description**",
"stock": 3,
"price": "5.00",
"currency": "USD",
"product_type": "serials",
"gateways": [
"ethereum",
"bitcoin_cash",
"bnb",
"dogecoin",
"litecoin",
"bitcoin",
"paypal",
"cashapp",
"polygon",
"stripe"
],
"private": false,
"unlisted": false,
"vpn_block": false,
"seller_note": null,
"maximum_quantity": null,
"minimum_quantity": 1,
"stock_delimiter": ",",
"stock_amount": null,
"image": {
"id": "55e68f9900c08f1dea6aec2ffc9c153856a91d5c/b65fcd4508226e9774445ebb4495048756750738",
"storage": "cdn",
"metadata": {
"size": 3463,
"filename": "logo.png",
"mime_type": "image/png"
},
"url": "https://cdn.selly.io/cd2de339c0a605dedf29aecd44d3feb002842e60/68747470733a2f2f73656c6c792e6e7963332e6469676974616c6f6365616e7370616365732e636f6d2f63616368652f353565363866393930306330386631646561366165633266666339633135333835366139316435632f6236356663643435303832323665393737343434356562623434393530343837353637"
},
"theme": "compact",
"max_risk_level": 30,
"dynamic_url": null,
"info": "SERIAL-1,SERIAL-2,SERIAL-3",
"file": null,
"warranty_duration": null,
"warranty": null,
"hide_stock": null,
"redirect_url": null,
"custom": [
{
"type": "text",
"name": "Example.com Username",
"required": false
}
],
"customer_details_required": false,
"created_at": "2023-09-09T10:18:23.000+01:00",
"updated_at": "2023-12-21T13:20:09.000+00:00"
}
{
"id": "5w8QhZqx",
// ...
}
]
Retrieve a product
This endpoint allows you to retrieve a product by providing the product id. Refer to the list at the top of this page to see which properties are included with product objects.
Request
curl https://selly.io/api/v2/products/8069720f \
-H "Authorization: Bearer {token}"
Response
{
"id": "8069720f",
"title": "This is an example product",
"description": "**An example description**",
"stock": 3,
"price": "5.00",
"currency": "USD",
"product_type": "serials",
"gateways": [
"ethereum",
"bitcoin_cash",
"bnb",
"dogecoin",
"litecoin",
"bitcoin",
"paypal",
"cashapp",
"polygon",
"stripe"
],
"private": false,
"unlisted": false,
"vpn_block": false,
"seller_note": null,
"maximum_quantity": null,
"minimum_quantity": 1,
"stock_delimiter": ",",
"stock_amount": null,
"image": {
"id": "55e68f9900c08f1dea6aec2ffc9c153856a91d5c/b65fcd4508226e9774445ebb4495048756750738",
"storage": "cdn",
"metadata": {
"size": 3463,
"filename": "logo.png",
"mime_type": "image/png"
},
"url": "https://cdn.selly.io/cd2de339c0a605dedf29aecd44d3feb002842e60/68747470733a2f2f73656c6c792e6e7963332e6469676974616c6f6365616e7370616365732e636f6d2f63616368652f353565363866393930306330386631646561366165633266666339633135333835366139316435632f6236356663643435303832323665393737343434356562623434393530343837353637"
},
"theme": "compact",
"max_risk_level": 30,
"dynamic_url": null,
"info": "SERIAL-1,SERIAL-2,SERIAL-3",
"file": null,
"warranty_duration": null,
"warranty": null,
"hide_stock": null,
"redirect_url": null,
"custom": [
{
"type": "text",
"name": "Example.com Username",
"required": false
}
],
"customer_details_required": false,
"created_at": "2023-09-09T10:18:23.000+01:00",
"updated_at": "2023-12-21T13:20:09.000+00:00"
}
Create a product
This endpoint allows you to create a product.
Request
curl -X POST https://selly.io/api/v2/products \
-H "Authorization: Bearer {token}" \
-d title="This is an example product" \
-d description="**An example description**" \
-d product_type="serials" \
-d stock_delimiter="," \
-d info="SERIAL-1,SERIAL-2,SERIAL-3" \
-d price="5.00" \
-d currency="USD" \
-d gateways[0]="stripe" \
-d gateways[1]="paypal" \
Response
{
"id": "8069720f",
"title": "New title",
"description": "**An example description**",
"stock": 3,
"price": "5.00",
"currency": "USD",
"product_type": "serials",
"gateways": [
"ethereum",
"bitcoin_cash",
"bnb",
"dogecoin",
"litecoin",
"bitcoin",
"paypal",
"cashapp",
"polygon",
"stripe"
],
"private": false,
"unlisted": false,
"vpn_block": false,
"seller_note": null,
"maximum_quantity": null,
"minimum_quantity": 1,
"stock_delimiter": ",",
"stock_amount": null,
"image": null,
"theme": "compact",
"max_risk_level": 30,
"dynamic_url": null,
"info": "SERIAL-1,SERIAL-2,SERIAL-3",
"file": null,
"warranty_duration": null,
"warranty": null,
"hide_stock": null,
"redirect_url": null,
"custom": [],
"customer_details_required": false,
"created_at": "2023-09-09T10:18:23.000+01:00",
"updated_at": "2023-12-21T13:20:09.000+00:00"
}
Update a product
This endpoint allows you to update a product.
Request
curl -X PUT https://selly.io/api/v2/products/8069720f \
-H "Authorization: Bearer {token}" \
-d title="New title"
Response
{
"id": "8069720f",
"title": "New title",
"description": "**An example description**",
"stock": 3,
"price": "5.00",
"currency": "USD",
"product_type": "serials",
"gateways": [
"ethereum",
"bitcoin_cash",
"bnb",
"dogecoin",
"litecoin",
"bitcoin",
"paypal",
"cashapp",
"polygon",
"stripe"
],
"private": false,
"unlisted": false,
"vpn_block": false,
"seller_note": null,
"maximum_quantity": null,
"minimum_quantity": 1,
"stock_delimiter": ",",
"stock_amount": null,
"image": {
"id": "55e68f9900c08f1dea6aec2ffc9c153856a91d5c/b65fcd4508226e9774445ebb4495048756750738",
"storage": "cdn",
"metadata": {
"size": 3463,
"filename": "logo.png",
"mime_type": "image/png"
},
"url": "https://cdn.selly.io/cd2de339c0a605dedf29aecd44d3feb002842e60/68747470733a2f2f73656c6c792e6e7963332e6469676974616c6f6365616e7370616365732e636f6d2f63616368652f353565363866393930306330386631646561366165633266666339633135333835366139316435632f6236356663643435303832323665393737343434356562623434393530343837353637"
},
"theme": "compact",
"max_risk_level": 30,
"dynamic_url": null,
"info": "SERIAL-1,SERIAL-2,SERIAL-3",
"file": null,
"warranty_duration": null,
"warranty": null,
"hide_stock": null,
"redirect_url": null,
"custom": [
{
"type": "text",
"name": "Example.com Username",
"required": false
}
],
"customer_details_required": false,
"created_at": "2023-09-09T10:18:23.000+01:00",
"updated_at": "2023-12-21T13:20:09.000+00:00"
}
Delete a product
This endpoint allows you to delete a product. Note: This will permanently delete the product.
Request
curl -X DELETE https://selly.io/api/v2/products/8069720f \
-H "Authorization: Bearer {token}" \