Apple Maps API endpoint
Returns one Apple Guide (curated collection) by id: title, description, last-modified time, cover photos, source link, publisher, and every place in the guide with the publisher's blurb for it plus the place's Apple place ID, name, category, coordinates, address, phone, website, rating, price level, hours, and photo.
/apple-maps/guides/guideReturns one Apple Guide (a publisher's curated collection of places) with every place in it.
Query parameters:
guide_id (required) — the guide's id, e.g. 13100041759208417726: from /apple-maps/guides, /apple-maps/guides/publisher, a place's guide_ids in /apple-maps/place, or the curated= value in a maps.apple.com/guides URL.lang (optional) — display language as a BCP 47 tag, e.g. en-US, fr-FR. Defaults to en-US.country (optional) — two-letter ISO 3166-1 code, e.g. US. Defaults to US.An unknown id returns a 404.
Each item's place is the same summary shape /apple-maps/search returns (id, place_id, url, name, type, category, categories[], latitude, longitude, address, address_info, phone, alt_phones[], website, rating, rating_max, rating_count, price_level, price_max, price_symbol, hours_type, hours[], photo_url); pass its place_id to /apple-maps/place for the full detail. description is the publisher's blurb for that place within the guide.
Response includes id, url, title, description, last_modified, item_total, photo_url, source_url, publisher (id, url, name, subtitle, website, guide_count), photos[] (url, width, height), and items[] (place, description, photo_url).
| Field | Filled in, of 11 checked | Values in the sample |
|---|---|---|
| place | 11 | |
| description | 11 | median 268 characters |
| photo_url | 11 | is1-ssl.mzstatic.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| guide_id | string | Yes | Guide id: from the guides home, a publisher page, a place's guide_ids, or the curated= value in a maps.apple.com/guides URL | 13100041759208417726 | |
| lang | string | No | en-US | Display language as a BCP 47 tag, e.g. en-US, fr-FR. Defaults to en-US. | en-US |
| country | string | No | US | Two-letter ISO 3166-1 country code. Defaults to US. | US |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/apple-maps/guides/guide?guide_id=13100041759208417726&lang=en&country=us" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": "13100041759208417726",
"url": "https://maps.apple.com/guides?curated=13100041759208417726&_provider=9902",
"title": "The San Francisco Coffee Guide",
"description": "The Bay Area's legendary coffee scene needs no introduction. The city's coffee shops and espresso bars have played host to a thousand moments of inspiration and intrigue, and are a vital part of San Francisco's ever-changing culture.",
"last_modified": "2023-02-08T19:42:59.000Z",
"item_total": 14,
"photo_url": "https://is1-ssl.mzstatic.com/image/thumb/w4_6Zdp2JR_l-mz7c9J94w/1200x800.jpg",
"publisher": {
"id": "1706564968711360917",
"url": "https://maps.apple.com/guides?publisher=1706564968711360917&_provider=9902",
"name": "Sprudge",
"subtitle": "Coffee News & Culture",
"guide_count": 19
},
"photos": [
{
"url": "https://is1-ssl.mzstatic.com/image/thumb/w4_6Zdp2JR_l-mz7c9J94w/1200x800.jpg",
"width": 1200,
"height": 800
}
],
"items": [
{
"place": {
"id": "14259377158355426565",
"place_id": "IC5E37BF9E2181D05",
"url": "https://maps.apple.com/place?place-id=IC5E37BF9E2181D05",
"name": "Linea Coffee Roasting",
"type": "BUSINESS",
"category": "Coffee Shop",
"latitude": 37.7637137,
"longitude": -122.3951792,
"address": "1200 18th St, San Francisco, CA 94107, United States",
"address_info": {
"street": "1200 18th St",
"neighborhood": "Potrero Hill",
"city": "San Francisco",
"state": "California",
"state_code": "CA",
"postal_code": "94107",
"country": "United States",
"country_code": "US"
},
"rating": 4.5,
"rating_max": 5,
"rating_count": 312,
"price_level": 2,
"price_max": 4,
"price_symbol": "$"
},
"description": "A charming Potrero Hill destination with dreamy outdoor seating from one of the city's best indie roasters.",
"photo_url": "https://is1-ssl.mzstatic.com/image/thumb/1eEfdDWQ7de_GpIMjmNZZg/1200x800.jpg"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/applemaps.guideResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | Code is the HTTP status code or a custom code used to indicate the result of the request @example 200 | |||
| data | applemaps.GuideResponse | No | ||||
| data.description | string | No | ||||
| data.id | string | No | ||||
| data.item_total | integer | No | ||||
| data.items | array | No | ||||
| data.items[].description | string | No | ||||
| data.items[].photo_url | string | No | ||||
| data.items[].place | applemaps.Place | No | Place record, 38 fields: address, address_info, alt_phones, categories, category, hours, hours_type, id, latitude, longitude, name, phone and 11 more. Described under Apple Maps Search API. | |||
| data.last_modified | string | No | ||||
| data.photo_url | string | No | ||||
| data.photos | array | No | ||||
| data.photos[].category | string | No | ||||
| data.photos[].height | integer | No | ||||
| data.photos[].id | string | No | ||||
| data.photos[].url | string | No | ||||
| data.photos[].width | integer | No | ||||
| data.publisher | applemaps.PublisherSummary | No | ||||
| data.publisher.guide_count | integer | No | ||||
| data.publisher.id | string | No | ||||
| data.publisher.name | string | No | ||||
| data.publisher.subtitle | string | No | ||||
| data.publisher.url | string | No | ||||
| data.publisher.website | string | No | ||||
| data.source_url | string | No | ||||
| data.title | string | No | ||||
| data.url | string | No | ||||
| msg | unknown | No | Msg is the message that describes the result of the request @example "Request successful" |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/apple-maps/guides/guide?guide_id=13100041759208417726&lang=en&country=us" \
-H "x-api-key: $CRAWLORA_API_KEY"