Skip to content

Products with their numbers, where sales came from and the payment connection

GET
/api/v1/workspaces/{workspace}/products
curl --request GET \
--url 'https://reputecast.example.com/api/v1/workspaces/acme-newsletter/products?period=30d' \
--header 'Authorization: Bearer <token>'

Permission: products:view

workspace
required

Workspace slug

string
/^[a-z0-9][a-z0-9-]{1,62}$/

Workspace slug

period
string
default: 30d
Allowed values: 30d 90d 12m

OK

Media typeapplication/json
object
buyers
required
object
contacts
required

Buyers who were contacts already

integer format: int64
joined
required

Buyers who ticked the list offer and became contacts

integer format: int64
none
required

Buyers who aren’t contacts

integer format: int64
offerText
required
string
product
required
string
ticked
required
integer format: int64
tickedBy
required
Array<object>
object
count
required
integer format: int64
name
required
string
productId
required
string
from
required
string format: date-time
helpers
required
object
edit
required
Array<string>
export
required
Array<string>
orders
required
Array<string>
publish
required
Array<string>
payments
required
object
account
required
string
connected
required
boolean
currency
required
string
hasLive
required
boolean
mode
required
string
Allowed values: live test ""
pricesIncludeTax
required
boolean
provider
required
string
taxAtCheckout
required
boolean
period
required
string
Allowed values: 30d 90d 12m
products
required
Array<object>
object
coverAlt
required
string
coverUrl
required
string
currency
required
string
files
required
object
bytes
required
integer format: int64
count
required
integer format: int64
kind
required

The first file’s kind in capitals (PDF, ZIP, XLSX)

string
pages
required

The first file’s pages, for a PDF

integer format: int64
grossCents
required
integer format: int64
id
required
string
name
required
string
orders
required
integer format: int64
price
required
object
amountCents
required
integer format: int64
<= 100000000
kind
required
string
Allowed values: one_time pwyw
minimumCents
required
integer format: int64
<= 100000000
suggestedCents
required
integer format: int64
<= 100000000
refundedCents
required
integer format: int64
refunds
required
integer format: int64
salesPage
required
object
name
required
string
pageId

Empty for the default product page

string
path
required
string
publishedAt
string format: date-time
status
required
string
Allowed values: draft scheduled published unpublished default
shortName
required
string
status
required
string
Allowed values: draft published archived
statusAt
string format: date-time
statusBy
required
string
updatedAt
required
string format: date-time
sources
required
Array<object>
object
grossCents
required
integer format: int64
orders
required
integer format: int64
product
required
string
productId
required
string
source
required
string
Allowed values: page shop product_page
stats
required
object
byProduct
required
Array<object>
object
count
required
integer format: int64
name
required
string
productId
required
string
grossCents
required
integer format: int64
netCents
required
integer format: int64
openDisputes
required
integer format: int64
orders
required
integer format: int64
refundedCents
required
integer format: int64
refundedOrders
required
integer format: int64
until
required
string format: date-time

Example

{
"payments": {
"mode": "live"
},
"period": "30d",
"products": [
{
"price": {
"kind": "one_time"
},
"salesPage": {
"path": "/field-guide",
"status": "draft"
},
"status": "draft"
}
],
"sources": [
{
"source": "page"
}
]
}

Error

Media typeapplication/problem+json
object
code

Stable error code, e.g. permission_denied

string
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object>
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

helpers

Members who hold the missing permission

Array<string>
instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
meta
object
key
additional properties
permission

The missing permission key

string
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}