REST APICompetitor-awareRule-based

Repricing API — Automated Dynamic Pricing

Build your own repricer in a weekend. REST endpoints for pricing rules, recommendations, feeds, competitor tiers, and activity logs. The same engine ShoppingScraper customers use to reprice 100K+ SKUs daily — exposed as a clean API.

Highlights

What is included

Rule-based pricing engine

Create pricing rules via POST /rules. Match by competitor, marketplace, margin floor, velocity. Stack rules by priority. Update or delete a single rule via PATCH/DELETE.

Recommendations on demand

GET /recommendations returns suggested prices per SKU with the full competitor context: which sellers triggered the rule, current Buy Box price, your margin at the new price.

Stable CSV/JSON feed

GET /feed/{task_uuid} is a permanent, polling-ready URL. Point your ERP, repricer, or storefront at it and pull the latest recommendations on any cadence.

Competitor tiers

Classify merchants Tier A / B / C. Build rules that ignore unknown sellers and only react to verified Tier A competitors — eliminating noise from drop-shippers.

Why a Repricing API instead of a SaaS UI

Most repricers (RepricerExpress, Aura, BQool, Repricer.com) lock you into their UI, their refresh cadence, and their integrations. The Repricing API gives you the same engine programmatically: trigger a reprice from your own cron, expose recommendations in your own ERP, audit every rule firing in your own logging stack.

  • Run repricing on YOUR cadence (every 5 minutes or once per day) — no per-SKU rate limits
  • Stable feed URLs your ERP polls directly — no webhook plumbing required
  • Competitor-tier classification so rules don't fire on drop-shippers or Marketplace mistakes
  • Activity log endpoint = full audit trail of who/what/when changed pricing
  • All recommendations exportable to CSV/JSON — no vendor lock-in on your pricing data

Typical integration: 4 endpoints, 1 weekend

A minimal viable repricer wires four endpoints: create rules, trigger reprice, fetch recommendations, write back to your storefront. The other endpoints (config, competitor-tiers, activity) are operational telemetry you add over time.

  • POST /rules → encode your pricing strategy (e.g. 'undercut Tier A by 1%, never go below 12% margin').
  • POST /reprice → trigger immediate evaluation of all active rules.
  • GET /recommendations → fetch the suggested-price queue with competitor context.
  • Write back to your storefront API (Shopify, bol.com Seller, Amazon SP-API).
  • GET /activity (optional) → ship rule firings to your logging stack for audit.

What this API is and isn't

The Repricing API ships pricing recommendations. It does NOT push prices to your storefront — that's your storefront's API job (Amazon SP-API, Shopify Admin API, bol.com Seller API). This separation is intentional: ShoppingScraper owns the competitive intelligence + rule engine, your storefront owns the source of truth for what you actually sell at.

  • ✅ Pulls competitor offers from 13 marketplaces (Amazon, bol.com, Coolblue, Google Shopping, etc.)
  • ✅ Evaluates your rules against the live competitor feed
  • ✅ Returns suggested prices with full reasoning (which competitor, which rule, what margin)
  • ✅ Exports recommendations to CSV/JSON or polling-ready feed URL
  • ❌ Does NOT push prices to Amazon / bol.com / Shopify — that's your storefront's job
  • ❌ Does NOT manage inventory or order fulfillment
API

Repricing API endpoints

4 endpoints — copy-paste in cURL, Python, or JavaScript. Full reference at app.shoppingscraper.com/apiguide.

Reprice — trigger immediate rule evaluation

POST /api/dynamic-pricing/reprice runs every active rule against the latest competitor offers. Returns counts: processed, changes, increases, decreases. Use as your cron entry point.

View in API guide

Implementation

curl -X GET "https://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Freprice&raw=true&api_key=your_api_key_here"
GEThttps://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Freprice&raw=true&api_key=your_api_key_here
API Response
{
"url": "https://app.shoppingscraper.com/api/dynamic-pricing/reprice",
"title": "Trigger immediate repricing",
"price": "49.99",
"price_currency": "EUR",
"availability": "InStock",
"brand": "Zazu",
"gtin": "8718924881156",
"description": "Product description...",
"images": ["https://..."],
"success": true
}

Rules — create / list / update pricing rules

GET /api/dynamic-pricing/rules lists rules, POST creates one, PATCH updates a single rule, DELETE removes it. Use POST /rules/batch to bulk-create. Each rule pairs a target SKU set with a pricing strategy.

View in API guide

Implementation

curl -X GET "https://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Frules&raw=true&api_key=your_api_key_here"
GEThttps://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Frules&raw=true&api_key=your_api_key_here
API Response
{
"url": "https://app.shoppingscraper.com/api/dynamic-pricing/rules",
"title": "Pricing rule list",
"price": "49.99",
"price_currency": "EUR",
"availability": "InStock",
"brand": "Zazu",
"gtin": "8718924881156",
"description": "Product description...",
"images": ["https://..."],
"success": true
}

Recommendations — suggested prices per SKU

GET /api/dynamic-pricing/recommendations returns the suggested-price queue with competitor context: which seller triggered the rule, current Buy Box, your projected margin. Pipeline this to your storefront API.

View in API guide

Implementation

curl -X GET "https://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Frecommendations&raw=true&api_key=your_api_key_here"
GEThttps://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Frecommendations&raw=true&api_key=your_api_key_here
API Response
{
"url": "https://app.shoppingscraper.com/api/dynamic-pricing/recommendations",
"title": "Pricing recommendations",
"price": "49.99",
"price_currency": "EUR",
"availability": "InStock",
"brand": "Zazu",
"gtin": "8718924881156",
"description": "Product description...",
"images": ["https://..."],
"success": true
}

Feed — stable polling URL for your ERP

GET /api/dynamic-pricing/feed/{task_uuid} is a permanent CSV (or .json) feed URL of the latest recommendations. Point your ERP / storefront / Power BI / Looker at it and poll on any cadence.

View in API guide

Implementation

curl -X GET "https://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Ffeed%2F00000000-0000-0000-0000-000000000000&raw=true&api_key=your_api_key_here"
GEThttps://app.shoppingscraper.com/page?url=https%3A%2F%2Fapp.shoppingscraper.com%2Fapi%2Fdynamic-pricing%2Ffeed%2F00000000-0000-0000-0000-000000000000&raw=true&api_key=your_api_key_here
API Response
{
"url": "https://app.shoppingscraper.com/api/dynamic-pricing/feed/00000000-0000-0000-0000-000000000000",
"title": "Latest recommendations feed (CSV)",
"price": "49.99",
"price_currency": "EUR",
"availability": "InStock",
"brand": "Zazu",
"gtin": "8718924881156",
"description": "Product description...",
"images": ["https://..."],
"success": true
}

Frequently Asked Questions

How is this different from RepricerExpress, Aura, BQool, or Repricer.com?+

Those tools lock you into their UI and per-marketplace integrations (typically Amazon-only). The ShoppingScraper Repricing API gives you the same rule engine as a clean REST surface — bring your own front-end, bring your own marketplace adapter, run repricing on your cadence not theirs. Pricing-data sourcing is built in (we already monitor 13 marketplaces).

Does the Repricing API push prices to my storefront automatically?+

No, by design. We ship recommendations; your storefront's own API (Amazon SP-API, Shopify Admin, bol.com Seller) is the source of truth for what you actually sell at. The integration is typically 50 lines of code: poll /recommendations, push to storefront. We deliberately don't handle this so we can't ever set the wrong price.

How fresh are the competitor prices the engine reacts to?+

Driven by your Schedulers. Tie a Scheduler running daily / 2x daily / 4x daily / on-demand to the EANs your rules target. Rules evaluate against the latest scrape from that scheduler. For real-time repricing, run the scheduler on Workdays or 4x Daily and call /reprice from your cron immediately after.

Can I run rules across multiple marketplaces?+

Yes. A single rule can target 'cheapest offer across Amazon NL, Amazon DE, bol.com NL, Coolblue NL'. Use competitor tiers to weight which marketplaces actually trigger your rule (e.g. ignore Coolblue if a smaller seller is undercutting).

How does competitor-tier classification work?+

GET /api/dynamic-pricing/competitor-tiers lists all merchants seen across your scrapes. POST a merchant to set their Tier (A/B/C) plus optional notes. Rules can scope themselves to 'Tier A only' so you don't react to drop-shippers, marketplace mistakes, or one-off liquidators.

Is there an audit trail for rule firings?+

Yes. GET /api/dynamic-pricing/activity returns the repricing event log: timestamp, rule id, affected product count, what changed. Pipe to your logging stack for compliance and post-hoc analysis.

Can I run the engine in simulation mode?+

Yes. PATCH /api/dynamic-pricing/config with simulation: true. Recommendations are still computed but flagged as simulated. Useful for stress-testing a new rule before it hits production margins.

What does the Repricing API cost?+

Repricing endpoints are part of the standard plan — 1 credit per /reprice call, free for /rules CRUD and /recommendations reads. The credit cost is on competitor-data acquisition (Schedulers), not the rule engine itself.

Start building your own repricer

100 free API credits. No credit card required. Full Repricing API access on day one.