bleau APIbleau.info ↗
Search Fontainebleau boulder problems by grade, star rating, type, area, and region. Get GPS coordinates for all bouldering areas via the bleau.info API.
What is the bleau API?
The bleau.info API provides two endpoints covering the full Fontainebleau bouldering database: search_boulders for filtering problems by grade range, star rating, type, area, and region, and get_areas for retrieving GPS coordinates and region groupings for all documented bouldering areas. Each boulder problem result includes up to 12 fields such as grade, alt_grade, rating, climbers, types, and ascent counts.
curl -X GET 'https://api.parse.bot/scraper/947d64a0-76f8-44e3-b963-1ff03dc4276c/search_boulders?max_grade=7a&min_grade=7a&min_rating=5&include_types=crimps' \ -H 'X-API-Key: $PARSE_API_KEY'
Search Fontainebleau boulder problems with filters for grade range, minimum star rating, and boulder type. Returns matching problems from the bleau.info database. Each result includes the problem name, grade, star rating, area, climbers, style/type tags, and counts for ascents, ratings, and grade votes. When many problems match, the site may cap results; the partial_results flag indicates whether truncation occurred. One upstream request to load the search results page plus one additional request per result (up to 50) to fetch detail-page counts (ascent_count, rating_count, grade_count).
| Param | Type | Description |
|---|---|---|
| area | string | Area name filter (free text, e.g. 'Cuvier'). |
| region | string | Region filter. Valid regions include: Apremont, Coquibus, Cuvier-Châtillon, Franchard, Larchant, Malesherbes, Nemours, Nord Fontainebleau, Sud Fontainebleau, Trois Pignons Est, Trois Pignons Ouest, Trois Pignons Sud, Vallée de l'Essonne, Vallée de l'École, Vallée de la Juine, Yvelines & Essonne Nord. |
| problem | string | Problem name search text. |
| max_grade | string | Maximum Fontainebleau grade filter (e.g. '6c+', '7a+', '9a'). Omitted returns all grades up to '9a'. |
| min_grade | string | Minimum Fontainebleau grade filter (e.g. '1', '5+', '6a', '7a+', '8b'). Omitted returns all grades from '1'. |
| min_rating | string | Minimum star rating filter, integer 0 to 5. |
| exclude_types | string | Comma-separated boulder types to exclude. Same valid types as include_types. |
| include_types | string | Comma-separated boulder types to include (e.g. 'crimps,slab,overhang'). None checked means all types included. Valid types: arete, belly, bidoigts, chimney, crack, crimps, dihedral, downclimbing, dyno, expo, high, jump, loop, mantle, monos, overhang, pillar, pinches, pockets, prow, roof, sitstart, slab, slightly overhanging, slopers, toprope, traverse, traverse fltr, traverse frtl, underclings, wall. |
{
"type": "object",
"fields": {
"problems": "array of boulder problem objects with name, id, url, grade, alt_grade, rating, area, area_slug, climbers, types, has_photo, has_video, ascent_count, rating_count, grade_count",
"total_returned": "integer count of problems in this response",
"partial_results": "boolean indicating whether the site truncated results"
},
"sample": {
"data": {
"problems": [
{
"id": "17291",
"url": "https://bleau.info/bouligny/17291.html",
"area": "Rocher de Bouligny",
"name": "6717A",
"grade": "7a",
"types": "slightly overhanging, crimps, sitstart",
"rating": 3.5,
"climbers": "Steven Demets, Ivan Moreels",
"alt_grade": "7a+",
"area_slug": "bouligny",
"has_photo": true,
"has_video": true,
"grade_sort": "21.22",
"rating_sort": "343.30"
}
],
"total_returned": 290,
"partial_results": false
},
"status": "success"
}
}About the bleau API
Searching Boulder Problems
The search_boulders endpoint accepts up to eight filter parameters. Use min_grade and max_grade with Fontainebleau notation (e.g. 6a, 7a+, 8b) to target a specific difficulty band. min_rating accepts integers 0–5 to surface only starred classics. The include_types and exclude_types parameters take comma-separated style tags such as crimps, slab, or overhang, letting you narrow results by movement style. You can scope queries to a specific area (free-text, e.g. Cuvier) or one of the named region values such as Franchard or Apremont.
Boulder Problem Response Fields
Each object in the problems array carries: name, id, url, grade, alt_grade, rating, area, area_slug, climbers, types, has_photo, and has_video flags alongside ascent and recommendation counts. The partial_results boolean tells you whether bleau.info truncated the result set server-side, and total_returned gives the count of objects in the current response.
Retrieving Areas and Coordinates
The get_areas endpoint returns every documented bouldering area with its name, slug, region, latitude, and longitude. Filter by region (exact match, case-insensitive) or by area name substring to narrow the list. The total field reflects how many areas matched. Coordinates come paired with region groupings, making this endpoint suitable for mapping or itinerary planning workflows.
The bleau API is a managed, monitored endpoint for bleau.info — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when bleau.info 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 bleau.info 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 grade-progression training app that fetches problems within a user's current
min_grade/max_gradewindow. - Generate a 'classic lines only' tick list by filtering
search_boulderswithmin_ratingof 4 or 5. - Plot all bouldering areas on a map using
latitudeandlongitudefromget_areas. - Filter problems by
include_types(e.g.slab) to prepare style-specific training sessions. - Build a regional guide app that groups areas by
regionand links to individual problem URLs. - Find unclimbed potential by scanning
climbersand ascent counts for low-traffic, high-rated problems. - Sync a personal logbook app with area slugs and problem IDs to track outdoor sessions at Fontainebleau.
| 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 bleau.info have an official developer API?+
What does `partial_results` mean in the `search_boulders` response?+
partial_results: true means bleau.info returned a truncated set for the given query. The total_returned field reflects how many problems are in the current payload, not necessarily the full match count. Narrow your filters — tighter grade range, a specific area, or additional type filters — to reduce the chance of truncation.Does `search_boulders` return individual move-sequence or beta descriptions?+
Are bouldering areas outside the Fontainebleau forest covered?+
How specific is the `region` filter, and what values are valid?+
region parameter on both endpoints requires an exact match (case-insensitive). Documented valid values include Apremont, Coquibus, Cuvier-Châtillon, Franchard, Larchant, and Malesherbes, among others. Passing a partial or misspelled region name will return no results rather than a fuzzy match. The area parameter on both endpoints does accept a free-text substring match.