Newegg APInewegg.com ↗
Search Newegg products, fetch specs, reviews, Q&A, category trees, and Shell Shocker deals via 7 structured API endpoints.
What is the Newegg API?
The Newegg API provides 7 endpoints covering product search, detailed specifications, customer reviews, Q&A, category navigation, and daily Shell Shocker deals. Use search_products to run keyword queries across Newegg's full catalog and get paginated summaries with pricing and availability, or use get_product_specifications to pull complete technical spec tables organized by section for any item number.
curl -X GET 'https://api.parse.bot/scraper/b688dfde-1a8f-4c87-9ceb-84612d9ecace/search_products?page=1&order=1&query=gaming+laptop&page_size=36&category_id=100167731' \ -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 newegg-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.
"""Walkthrough: Newegg SDK — search products, drill into details, browse deals."""
from parse_apis.newegg_api import Newegg, Sort, PageSize, ProductNotFound
newegg = Newegg()
# Search for gaming laptops sorted by best rating
for product in newegg.productsummaries.search(query="gaming laptop", order=Sort.BEST_RATING, limit=3):
print(product.title, product.price, product.availability)
# Drill into the first result for full details and specs
item = newegg.productsummaries.search(query="RTX 5070", limit=1).first()
if item:
detail = item.details()
print(detail.title, detail.brand, detail.availability)
# Full technical specifications
spec = detail.specifications()
print(spec.sections)
# Browse customer reviews
for review in detail.reviews.list(limit=3):
print(review.Title, review.Rating, review.NickName)
# Browse today's Shell Shocker deals
for deal in newegg.deals.list(limit=5):
print(deal.title, deal.final_price, deal.in_stock)
# Typed error handling for a non-existent product
try:
missing = newegg.products.get(item_number="N82E16800000000")
print(missing.title)
except ProductNotFound as exc:
print(f"Product not found: {exc.item_number}")
print("exercised: productsummaries.search / details / specifications / reviews.list / deals.list / products.get")
Full-text search across Newegg product listings. Returns paginated results with product summaries including title, price, brand, availability, and thumbnail. Supports sorting by featured, price, rating, reviews, or best-selling. Each page returns up to page_size items (default 36). The category_id parameter (Newegg's N value) narrows results to a specific category tree node.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number |
| order | string | Sort order |
| queryrequired | string | Search keyword or phrase |
| page_size | string | Results per page |
| category_id | string | Category/Filter node ID (N parameter from get_category_tree) |
{
"type": "object",
"fields": {
"page": "integer current page number",
"products": "array of product summary objects with title, url, item_number, brand, price, currency, availability, thumbnail",
"total_results": "integer count of products on this page"
},
"sample": {
"data": {
"page": 1,
"products": [
{
"url": "https://www.newegg.com/lenovo-legion-5i/p/N82E16834840673",
"brand": "Lenovo",
"price": "1,249.99",
"title": "Lenovo Legion 5i - 15.1\" GeForce RTX 5060 Laptop GPU",
"currency": "USD",
"thumbnail": "https://c1.neweggimages.com/productimage/nb300/34-840-673-19.jpg",
"item_number": "N82E16834840673",
"availability": "In Stock",
"review_count": "10",
"original_price": "$1,399.99"
}
],
"total_results": 42
},
"status": "success"
}
}About the Newegg API
Product Search and Detail
search_products accepts a required query string plus optional parameters for page, page_size, order (featured, price, rating, reviews, or best-selling), and category_id to scope results to a specific category node. Each result object includes title, url, item_number, brand, price, currency, availability, and thumbnail. The item_number returned here is the key input for all other product-level endpoints.
get_product_detail returns a product's title, brand, price, availability, full-resolution images array, and a Quick Info specifications object. For deeper technical data, get_product_specifications returns a sections object whose keys are spec category names (e.g., CPU, Display, Memory, Storage) and whose values are key-value spec pairs — covering everything in the product's full spec table rather than just the Quick Info summary.
Reviews, Q&A, and Categories
get_product_reviews returns paginated reviews with Rating, Title, NickName, Comments, Pros, Cons, and InDate fields per review, plus aggregate total_count, page_count, and average_rating. get_product_qna uses offset-based pagination via start and size parameters and returns question objects with answer text and vote counts.
get_category_tree returns Newegg's full hierarchical category structure as a RollOverMenu array. Each node includes StoreId, StoreName, StoreType, and nested SubLeafInfo arrays. Pass a StoreId value as the category_id parameter in search_products to filter results to a specific department. get_shell_shocker_deals returns the current day's featured deals with title, final_price, original_price, in_stock, brand, item_number, and image — deals rotate daily.
The Newegg API is a managed, monitored endpoint for newegg.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when newegg.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 newegg.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?+
- Track price changes on specific components by polling
get_product_detailwith a targetitem_number - Build a PC parts comparison tool using
get_product_specificationsto align spec sections across multiple GPUs or CPUs - Aggregate customer sentiment by combining
average_ratingand reviewPros/Consfields fromget_product_reviews - Populate a deal alert system using
get_shell_shocker_dealsto notify users when featured items drop below a threshold price - Index Newegg's category hierarchy via
get_category_treeto build a navigable product browser keyed onStoreId - Answer pre-purchase questions by surfacing
get_product_qnaresults alongside product listings in a shopping assistant - Monitor in-stock status for high-demand items by checking the
availabilityfield fromget_product_detail
| 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 Newegg have an official public developer API?+
What does `get_product_specifications` return that `get_product_detail` doesn't?+
get_product_detail includes a Quick Info specifications object with a small set of highlighted key-value pairs. get_product_specifications returns the complete sections object covering every spec table on the product page — for a laptop this might include separate sections for CPU, Display, Graphics, Memory, Storage, Battery, and Connectivity, each with its full set of fields.How does pagination work across the different endpoints?+
search_products and get_product_reviews use page-based pagination via an integer page parameter. get_product_qna uses offset-based pagination via start (starting index) and size (results per request). get_shell_shocker_deals and get_category_tree take no pagination inputs and return all available data in one response.Does the API return seller ratings or third-party marketplace seller information?+
Can I retrieve historical pricing data through this API?+
get_product_detail and search_products at the time of the request, and get_shell_shocker_deals reflects the day's active deal price. There is no historical price series in the response fields. You can fork this API on Parse and revise it to build a price-tracking layer by storing successive responses over time.