StackSocial APIstacksocial.com ↗
Access StackSocial deals, product details, reviews, and collections via API. Search software discounts, lifetime deals, memberships, and related products.
What is the StackSocial API?
The StackSocial API exposes 8 endpoints covering deal search, collection browsing, product details, user reviews, and related product recommendations from StackSocial's marketplace. The get_product_detail endpoint returns full deal data including current price, original price, discount percentage, price-drop deadline, rating, and review count — giving developers structured access to the deals catalog without manual site navigation.
curl -X GET 'https://api.parse.bot/scraper/63296c43-6a0e-4828-bf8f-148e20555a58/search_deals?limit=5&query=VPN' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace stacksocial-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.stacksocial_deals_api import StackSocial, Deal, DealDetail, Review, RelatedDeal, CollectionItem
client = StackSocial()
# Search for VPN deals
for deal in client.deals.search(query="VPN"):
print(deal.name, deal.price, deal.discount_percentage)
# Get full product details by slug
detail = client.dealdetails.get(slug="adguard-vpn-5-yr-subscription")
print(detail.name, detail.brand, detail.price, detail.original_price)
for variant in detail.variants:
print(variant.name, variant.price)
# Browse reviews for a deal via sub-resource
vpn_deal = client.deal(slug="adguard-vpn-5-yr-subscription")
for review in vpn_deal.reviews.list():
print(review.reviewer, review.rating, review.date)
# Get related products via sub-resource
for related in vpn_deal.related.list():
print(related.name, related.price, related.discount_percentage)
# Browse a collection with automatic pagination
for item in client.collectionitems.browse(slug="lifetime-deals"):
print(item.name, item.price, item.price_drop)
# Browse membership deals
for item in client.collectionitems.memberships():
print(item.name, item.price, item.new_deal)
Full-text search over StackSocial deals by keyword. Returns matching products sorted by best sellers. Each result includes pricing, discount percentage, ratings, and category tags. The limit param controls result count (max ~50). No cursor-based pagination; a single page is returned.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return. |
| queryrequired | string | Search keyword (e.g. 'VPN', 'productivity', 'AI tools'). |
{
"type": "object",
"fields": {
"items": "array of deal objects with pricing, ratings, and categories"
},
"sample": {
"data": {
"items": [
{
"id": 214986,
"name": "AdGuard VPN: 5-Yr Subscription",
"slug": "adguard-vpn-5-yr-subscription",
"price": 34.97,
"title": "Stay Private & Secure with Advanced Encryption Algorithm",
"rating": 4.8,
"categories": [
"Security"
],
"review_count": 868,
"original_price": 359.4,
"discount_percentage": 90
}
]
},
"status": "success"
}
}About the StackSocial API
Search and Browse Deals
The search_deals endpoint accepts a query string (e.g. 'VPN', 'AI tools', 'productivity') and an optional limit, returning an array of deal objects sorted by best sellers. Each item includes id, name, title, slug, price, original_price, discount_percentage, rating, review_count, and categories. The get_collection endpoint lets you page through named collections using a slug parameter — standard slugs include 'lifetime-deals', 'apps-software-business', and 'memberships' — and returns collection_name, an items array, and a page_info object for pagination.
Product Details and Reviews
get_product_detail takes a product slug and returns the full deal record, including price_drop_ends_at — a field that indicates when a time-limited discount expires. This is useful for building deal-alert workflows. get_product_reviews returns an array of review objects per product, each with reviewer, rating, text, and date. The optional limit param controls how many reviews are fetched.
Specialized Collections and Recommendations
Three convenience endpoints — get_lifetime_deals, get_business_software_deals, and get_memberships — are pre-scoped to their respective collections and accept only a page parameter, making them straightforward to poll for category-specific deal feeds. get_related_products returns up to 6 related deals for a given product slug, each with name, slug, price, original_price, and discount_percentage, suitable for building recommendation sidebars or cross-sell logic.
The StackSocial API is a managed, monitored endpoint for stacksocial.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when stacksocial.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official stacksocial.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a deal-alert bot that monitors
price_drop_ends_atfromget_product_detailand notifies users before discounts expire. - Aggregate lifetime software deals using
get_lifetime_dealsto power a curated newsletter or RSS feed. - Compare user sentiment by pulling
ratingandreview_countacrosssearch_dealsresults for a given software category. - Populate a recommendation widget using
get_related_productsfor a given product slug. - Track discount depth over time by storing
price,original_price, anddiscount_percentagefrom periodicget_collectioncalls. - Build a membership-deal tracker by polling
get_membershipsand filtering by review count or rating threshold. - Surface business software alternatives by searching competitors' product names via
search_dealsand comparing pricing fields.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does StackSocial have an official public developer API?+
What does `get_product_detail` return beyond basic pricing?+
price and original_price, the endpoint returns discount_percentage, price_drop_ends_at (the expiry timestamp for time-limited price drops), rating, review_count, categories, and variant information. The slug is the required input.Does the API expose individual deal variants or bundle options?+
get_product_detail endpoint includes variant data in its response object. However, variant-level pricing breakdowns as separate filterable fields are not currently surfaced as distinct top-level fields across all endpoints. You can fork this API on Parse and revise it to expose variant pricing as individual response fields.Is there a way to filter `search_deals` by category or price range?+
search_deals endpoint currently accepts query and limit as inputs. Filtering by category slug or price range is not currently supported as a query parameter. Each result does include a categories field, so client-side filtering is possible. You can fork this API on Parse and revise it to add category or price-range filter parameters.How fresh is the deal and pricing data?+
price_drop_ends_at and current price are pulled on each call, so polling at a reasonable interval is advisable for deal-monitoring use cases. Historical price tracking is not built into the API — it covers current state only.