Guitar Center APIguitarcenter.com ↗
Search and retrieve Guitar Center electric guitar listings via API. Access pricing, specs, reviews, variants, and store availability for any SKU.
What is the Guitar Center API?
The Guitar Center API exposes 2 endpoints covering electric guitar product data from guitarcenter.com, including pricing, customer review ratings, full specifications, and color/finish variants. Use search_products to query the catalog with filters for brand, condition, and price range, or call get_product with a SKU ID to pull detailed specs, store availability, and all available variants for a specific instrument.
curl -X POST 'https://api.parse.bot/scraper/f12042c4-53c5-4b0b-895a-6796ae939bd7/search_products' \
-H 'X-API-Key: $PARSE_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"page": "0",
"query": "stratocaster",
"sort_by": "relevance",
"category": "Guitars > Electric Guitars",
"hits_per_page": "5"
}'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 guitarcenter-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: Guitar Center Electric Guitars API — search, filter, and inspect products."""
from parse_apis.Guitar_Center_Electric_Guitars_API import GuitarCenter, SortBy, ProductNotFound
client = GuitarCenter()
# Search for Fender Stratocasters, sorted by top rated
for product in client.products.search(query="stratocaster", brand="Fender", sort_by=SortBy.TOP_RATED, limit=3):
print(product.display_name, f"${product.price}", f"Rating: {product.review_rating}/10")
# Get a single product by drilling into search results
guitar = client.products.search(query="les paul", limit=1).first()
if guitar:
print(f"\nFound: {guitar.display_name} by {guitar.brand}")
print(f"Price: ${guitar.price} (list: ${guitar.list_price})")
print(f"Condition: {guitar.condition} {guitar.condition_detail}")
for variant in guitar.variants[:3]:
print(f" Variant: {variant.display_name} - ${variant.price}")
# Fetch full details for a known product
if guitar:
try:
detail = client.products.get(sku_id=guitar.sku_id)
print(f"\nSpecs: {detail.specs[:100]}...")
print(f"Stores: {detail.stores[:3]}")
except ProductNotFound as exc:
print(f"Product not found: {exc}")
print("\nExercised: products.search (with brand/sort filters) / products.get / variant access")
Search electric guitar products on Guitar Center with optional filters for brand, condition, price range, and text query. Results are paginated and auto-iterated. Each product includes pricing, reviews, images, and available color/finish variants. Default category is Electric Guitars but can be changed to browse other instrument categories.
| Param | Type | Description |
|---|---|---|
| page | integer | Zero-based page number for pagination. |
| brand | string | Filter by brand name (e.g. Fender, Gibson, PRS, Epiphone, Squier, Jackson, Ibanez). Case-sensitive, must match the brand as listed on Guitar Center. |
| query | string | Free-text search query to filter products by name, brand, or keywords. |
| sort_by | string | Sort order for results. Empty string uses default relevance sorting. |
| category | string | Category path filter using Guitar Center's hierarchy format (e.g. 'Guitars > Electric Guitars'). Defaults to Electric Guitars. |
| condition | string | Filter by product condition. Accepted values: New, Used. Empty string means no filter. |
| max_price | string | Maximum price filter in USD (e.g. '1000'). Empty string means no maximum. |
| min_price | string | Minimum price filter in USD (e.g. '100'). Empty string means no minimum. |
| hits_per_page | integer | Number of products per page (1-100). |
{
"type": "object",
"fields": {
"page": "integer",
"products": "array of product objects with sku_id, display_name, brand, price, list_price, condition, condition_detail, color, image_url, seo_url, review_rating, review_count, features, and variants",
"total_hits": "integer",
"total_pages": "integer",
"hits_per_page": "integer"
},
"sample": {
"data": {
"page": 0,
"products": [
{
"brand": "Fender",
"color": "Burst or Fade",
"price": 849.99,
"sku_id": "site51500000428057",
"seo_url": "https://www.guitarcenter.com/Fender/Player-II-Stratocaster-Rosewood-Fingerboard-Electric-Guitar-3-Color-Sunburst-1500000428057.gc",
"features": "Player II Stratocaster delivers iconic Fender tone...",
"image_id": "M11487000001000",
"variants": [
{
"price": 849.99,
"sku_id": "site51500000477962",
"seo_url": "https://www.guitarcenter.com/Fender/Player-II-Stratocaster-Electric-Guitar-Cactus-Gray-1500000477962.gc",
"image_id": "M11487000006000",
"condition": "New",
"list_price": 849.99,
"display_name": "Fender Player II Stratocaster Electric Guitar - Cactus Gray"
}
],
"condition": "New",
"image_url": "https://media.guitarcenter.com/is/image/MMGS7/M11487000001000",
"list_price": 849.99,
"product_id": "site51500000000382965",
"display_name": "Fender Player II Stratocaster Electric Guitar - 3-Color Sunburst",
"review_count": 10,
"review_rating": 10
}
],
"total_hits": 2413,
"total_pages": 805,
"hits_per_page": 3
},
"status": "success"
}
}About the Guitar Center API
Search the Catalog
The search_products endpoint accepts POST requests with optional filters including brand (e.g. Fender, Gibson, Ibanez), condition (New or Used), min_price, max_price, and a free-text query. Results are paginated — the response includes total_hits, total_pages, and hits_per_page alongside the products array. Each product object carries sku_id, display_name, brand, price, list_price, condition, color, image_url, seo_url, and review_rating. The page parameter is zero-based. The sort_by field controls ordering; leaving it empty returns default relevance ranking.
Product Detail
The get_product endpoint accepts a sku_id with or without the site5 prefix (both site51500000337994 and 1500000337994 resolve correctly). The response includes brand, color, price, condition, specs, features, seo_url, and a stores array listing store names where the item is in stock. The variants array covers all available color and finish options for that model, making it straightforward to enumerate every purchasable configuration without separate lookups.
Coverage and Scope
Both endpoints are scoped to the Electric Guitars category by default. The category parameter on search_products follows Guitar Center's hierarchy format (e.g. Guitars > Electric Guitars), which can be used to adjust scope if needed. Identifiers returned — including sku_id and seo_url — are sufficient to link back to the canonical product page or cross-reference against other data sources.
The Guitar Center API is a managed, monitored endpoint for guitarcenter.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when guitarcenter.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 guitarcenter.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 price-tracking tool that monitors
priceandlist_pricechanges for specific guitar SKUs over time. - Aggregate
review_ratingdata across brands to compare average customer satisfaction for Fender vs. Gibson vs. Epiphone. - Generate a used guitar inventory feed by filtering
search_productswithcondition: Usedand exporting results. - Check local
storesavailability for a specific SKU before directing a customer to a nearby Guitar Center location. - Enumerate all color and finish
variantsfor a guitar model to power a product configurator or comparison table. - Build a deal-finder by querying
search_productswithmax_priceand comparingpriceagainstlist_priceto surface discounted listings. - Sync a music retailer's internal catalog with up-to-date
specsandfeaturestext pulled viaget_product.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Guitar Center have an official public developer API?+
What does the `get_product` endpoint return beyond what `search_products` provides?+
get_product adds specs (a detailed specification string), features, a stores array of store names with availability, and a full variants array covering all color and finish options. The search endpoint returns a subset of fields suitable for listing pages — get_product is the right call when you need the complete record for a single SKU.How does brand filtering work in `search_products`?+
brand parameter is case-sensitive and must match Guitar Center's stored brand name exactly. Examples that work: Fender, Gibson, PRS, Epiphone, Squier, Jackson, Ibanez. A mismatch in casing or spelling will return zero results for that filter without an error, so verify the brand string against a known result first.Does the API cover acoustic guitars, basses, or other instrument categories?+
search_products endpoint accepts a category parameter that follows Guitar Center's hierarchy format, so other categories may be reachable by passing the correct path string — but only Electric Guitars is tested and documented. Acoustic guitars, basses, and other departments are not officially covered. You can fork this API on Parse and revise it to add endpoints targeting those categories.Is historical pricing or price-drop history available?+
price and list_price values at the time of the request. Time-series price tracking is not built in. You can fork this API on Parse and add a persistence layer or scheduled polling endpoint to capture price history.