Noteboxd API · v1
The fragrance data layer for your app.
Query hundreds of thousands of fragrances, notes, accords, brands, perfumers, and community reviews over a clean REST API. Authenticate with a key, get JSON back.
curl https://api.noteboxd.com/v1/fragrances?q=oud \ -H "Authorization: Bearer nb_live_your_api_key"
What you can build with
One API for the whole fragrance graph.
Fragrances
Hundreds of thousands of fragrances with concentration, launch year, community scores, and cover art. Fetch one, batch up to 50, or search and filter.
Notes & accords
The full pyramid — top, heart, base — plus accord families with the palette colors used across Noteboxd.
Brands & perfumers
Brand and perfumer profiles with their catalogs, so you can build houses, noses, and attribution into your own app.
Reviews & ratings
Community and Verified Critic reviews with scores, filtered for moderation — never drafts or hidden content.
Search & trending
Full-text search across every entity type, plus trending fragrances and searches that resolve to real catalog entries.
Enrichment
One call returns a fragrance with its similar scents and recent reviews — the enrich endpoint bundles what a detail page needs.
Pricing
Start free. Pay for what you use.
For prototyping and evaluation.
Prepaid balance, per-call pricing.
A monthly API allowance with Pro.
Volume contracts and support.
API reference
Everything you need to make your first call.
All endpoints live at api.noteboxd.com/v1. The full machine-readable contract is at /v1/openapi.json (OpenAPI 3.2.0).
Authentication
All API requests require a Bearer token in the Authorization header. Keys are prefixed with nb_live_.
Create API keys in your project settings. Keys are shown once at creation — store them securely.
Rate Limits
Rate limits are applied per-account across all keys. Every response includes rate limit headers:
| Header | Description |
|---|---|
| X-RateLimit-Limit | Maximum number of requests allowed in the current window |
| X-RateLimit-Remaining | Number of requests remaining in the current window |
| X-RateLimit-Reset | Unix timestamp (seconds) when the rate limit window resets |
Tier Limits
- Free: 50 calls/day
- Pay-as-you-go: 100 calls/sec, 50,000 calls/day
- Noteboxd Pro: 2,000 calls/day
- Enterprise: Custom limits
When rate-limited, the API returns HTTP 429 with a Retry-After header indicating seconds until you can retry.
Endpoints
Search
Charts
Fragrances
Brands
Perfumers
Notes
Accords
Build with Noteboxd
Create an account, spin up a project, and generate a key in a couple of minutes. The free tier is enough to start.