Keepa-Sheets Hourly Data Sync
Budget: $30 – $250 USD
Goal
Set up a scalable scraping pipeline using the Keepa.com API. The pipeline must respect Keepa’s token system, run on a fixed schedule, and push cleaned data into Google Sheets until the full result set is processed.
What we need built
Python script that:
Authenticates to Keepa with our API key
Runs a Product Finder query using our filters
Paces requests based on available tokens, waits when tokens are low, then resumes
Pulls results in batches until the entire set is complete
Normalizes and writes data to Google Sheets (via Google Sheets API)
Supports incremental runs, so no duplicate rows
Scheduler on PythonAnywhere
Run every 1 hour
Auto-resume where it left off
Robust logging, basic alerts on failures, and retry logic
Data output
Write to a single Google Sheet with a “raw” tab and a “cleaned” tab
Include key fields we specify in a JSON config, for example: ASIN, title, brand, buyBox price, FBA price, totalOfferCount, current_SALES, monthlySold, BSR, lastOffersUpdate, last price change timestamps
Preserve product IDs so we can de-dupe and upsert cleanly
Config and handoff
.env for secrets
YAML or JSON for filters and field mapping
Clear README with setup, run, and recovery steps
Lightweight unit tests for at least the parser and sheet writer
Key requirements
Strong Python skills
Solid experience with token or rate-limited APIs
Keepa API experience, or equivalent marketplace APIs
Google Sheets API, service accounts, and upsert patterns
Production habits: retries, exponential backoff, idempotency, logging
Set up a scalable scraping pipeline using the Keepa.com API. The pipeline must respect Keepa’s token system, run on a fixed schedule, and push cleaned data into Google Sheets until the full result set is processed.
What we need built
Python script that:
Authenticates to Keepa with our API key
Runs a Product Finder query using our filters
Paces requests based on available tokens, waits when tokens are low, then resumes
Pulls results in batches until the entire set is complete
Normalizes and writes data to Google Sheets (via Google Sheets API)
Supports incremental runs, so no duplicate rows
Scheduler on PythonAnywhere
Run every 1 hour
Auto-resume where it left off
Robust logging, basic alerts on failures, and retry logic
Data output
Write to a single Google Sheet with a “raw” tab and a “cleaned” tab
Include key fields we specify in a JSON config, for example: ASIN, title, brand, buyBox price, FBA price, totalOfferCount, current_SALES, monthlySold, BSR, lastOffersUpdate, last price change timestamps
Preserve product IDs so we can de-dupe and upsert cleanly
Config and handoff
.env for secrets
YAML or JSON for filters and field mapping
Clear README with setup, run, and recovery steps
Lightweight unit tests for at least the parser and sheet writer
Key requirements
Strong Python skills
Solid experience with token or rate-limited APIs
Keepa API experience, or equivalent marketplace APIs
Google Sheets API, service accounts, and upsert patterns
Production habits: retries, exponential backoff, idempotency, logging
Related categories:
JavaScript
Python
Data Processing
Web Scraping
Google App Engine
Google Chrome
Node.js
API
Data Integration
API Development