Products

Product details and marketplace listings.

Get product

GET /products/{product_id}

Scope: products.read

Returns a single product with pricing data.

ParameterTypeDescription
product_idstringUUID of the product

Request

curl "https://api.presscart.com/products/33333333-3333-3333-3333-333333333333" \
  -H "Authorization: Bearer $PRESSCART_API_TOKEN"

Response

{
  "id": "33333333-3333-3333-3333-333333333333",
  "name": "Guest Post",
  "description": "High-quality guest post on a tech blog",
  "requirements": "500+ words, original content",
  "min_delivery_days": 5,
  "max_delivery_days": 10,
  "is_featured": false,
  "active": true,
  "example_links": ["https://example.com/sample-post"],
  "image": null,
  "logo": null,
  "example_screenshot": null,
  "type_id": "tttttttt-tttt-tttt-tttt-tttttttttttt",
  "created_at": "2026-01-15T10:00:00.000Z",
  "updated_at": "2026-02-20T08:00:00.000Z",
  "deleted_at": null,
  "prices": [
    { "unit_amount": 250, "pricing_tier": "basic" }
  ]
}

List product listings

GET /products/listings

Scope: products.read

Paginated product listings with channel, outlet, and pricing data.

Query parameters

ParameterTypeDescription
limitnumberRecords per page (default: 25)
pagenumberPage number
sort_bystringSort field (see below)
order_bystringasc or desc

Sort options

sort_by valueDescriptionDefault
domain_authorityDomain Authority (DA)Yes (desc)
domain_rankingDomain Rating (DR)
priceListing price
created_atDate added
nameAlphabetical by name

Filters

Pass filters as filters[field]=value query params.

FilterTypeDescription
searchstringSearch by name
channel_typesstring[]Filter by channel type
placement_typesstring[]Filter by placement type
min_pricenumberMinimum price
max_pricenumberMaximum price
min_danumberMinimum Domain Authority
max_danumberMaximum Domain Authority
min_drnumberMinimum Domain Rating
max_drnumberMaximum Domain Rating
min_tatnumberMinimum turnaround (days)
max_tatnumberMaximum turnaround (days)
tagsstring[]Filter by tag names (see List tags)
countrystringFilter by country
statestringFilter by state
citystringFilter by city
is_do_followbooleanDo-follow links only
is_indexedbooleanIndexed outlets only
most_popularbooleanMost popular listings
new_last_30_daysbooleanAdded in last 30 days
product_idsstring[]Filter by specific product UUIDs
disclaimer_idsstring[]Filter by disclaimer IDs (see List disclaimers)

Request

curl "https://api.presscart.com/products/listings?limit=20&filters[is_do_follow]=true&filters[min_da]=30" \
  -H "Authorization: Bearer $PRESSCART_API_TOKEN"

Response

{
  "records": [
    {
      "id": "33333333-3333-3333-3333-333333333333",
      "name": "Guest Post",
      "description": "High-quality guest post placement",
      "requirements": "500+ words, original content",
      "min_delivery_days": 5,
      "max_delivery_days": 10,
      "is_featured": false,
      "example_links": ["https://example.com/sample-post"],
      "created_at": "2026-01-15T00:00:00.000Z",
      "outlet_id": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
      "outlet_name": "Example Outlet",
      "website_url": "https://example.com",
      "logo": null,
      "country": "US",
      "state": "CA",
      "city": null,
      "is_indexed": true,
      "channel_id": "cccccccc-cccc-cccc-cccc-cccccccccccc",
      "channel_type": "blog",
      "placement_type": "guest_post",
      "domain_authority": 45,
      "domain_ranking": 38,
      "is_do_follow": true,
      "disclaimer": null,
      "prices": [{ "unit_amount": 250, "pricing_tier": "basic" }],
      "tags": [{ "name": "tech" }],
      "includes": [{ "channel_type": "blog", "placement_type": "guest_post" }]
    }
  ],
  "total_records": 500,
  "total_pages": 25,
  "current_page": 1,
  "next_page": 2,
  "previous_page": null
}

List product categories

GET /products/categories

Scope: products.read

Returns product counts grouped by placement type and social channel.

Request

curl "https://api.presscart.com/products/categories" \
  -H "Authorization: Bearer $PRESSCART_API_TOKEN"

Response

[
  { "type": "FULL_FEATURE", "count": 245 },
  { "type": "PRESS_RELEASE", "count": 89 },
  { "type": "NEWSLETTER", "count": 34 },
  { "type": "SOCIAL", "count": 112 }
]

On this page