# Apple Maps Business Search & Place Data Scraper

> Apple Maps Business Search & Place Data Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Searches Apple Maps for businesses by query and location, or retrieves structured place details from Apple Maps URLs, returning names, phones, websites, ratings, and place types.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/apple-maps?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/apple-maps-business-search-place-data-scraper-41b02575
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_54olC5ULQycNFjypgvcYW

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability apple-maps-business-search-place-data-scraper-41b02575 -d '<json body>'
```

Example prompt: Search Apple Maps for pizza restaurants in Chicago with at least a 4-star rating, only show ones that are open right now and have a website, and give me up to 30 results.

## When to prefer this

Choose this endpoint when you need structured business data from Apple Maps specifically — including Apple Maps place IDs, formatted phone numbers, and place types — especially when filtering by open status, minimum rating, phone availability, or website presence. Prefer it over generic web scrapers when your use case involves local business discovery, lead generation, or building POI datasets from Apple Maps search results or direct place links.

## Known failure modes

- Empty results if no businesses match the filters (not charged)
- Apple Maps rate limiting or anti-scraping measures causing partial results
- Invalid or malformed Apple Maps URLs in placeUrls or searchUrls inputs
- Unsupported locale string causing fallback to default en-US
- minRating filter too strict returning zero results
- Location string too ambiguous to geocode accurately

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

A JSON object containing a count of results and an array of place items, each with fields including name, phone, formatted phone, website URL, Apple Maps place URL, place ID, place ID hex, and place type. Failed or empty runs are not charged.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "openNow": {
   "type": "boolean",
   "default": false,
   "description": "Keep only places open when the run executes, based on published weekly hours and local timezone."
  },
  "hasPhone": {
   "type": "boolean",
   "default": false,
   "description": "Keep only places with a published phone number."
  },
  "language": {
   "type": "string",
   "default": "en-US",
   "description": "Locale for result text and categories, such as en-US or de-DE."
  },
  "maxItems": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Stop after this many places across all inputs. Zero means no total limit."
  },
  "minRating": {
   "enum": [
    "3",
    "3.5",
    "4",
    "4.5"
   ],
   "type": "string",
   "description": "Keep places whose rating converts to at least this score on a five-point scale."
  },
  "placeUrls": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Direct Apple Maps place links, including place-id and auid links."
  },
  "hasWebsite": {
   "type": "boolean",
   "default": false,
   "description": "Keep only places with a published website."
  },
  "maxResults": {
   "type": "integer",
   "default": 50,
   "maximum": 500,
   "minimum": 1,
   "description": "Maximum unique places from each search. Dense searches shift the center to pass the 25-result window."
  },
  "searchUrls": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Apple Maps search links with query and center coordinates."
  },
  "countryCode": {
   "type": "string",
   "default": "US",
   "description": "Two-letter country context used for place ranking and results."
  },
  "searchQueries": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "query",
     "location"
    ],
    "properties": {
     "query": {
      "type": "string",
      "title": "Search term",
      "editor": "textfield",
      "description": "Business type or name to search for."
     },
     "location": {
      "type": "string",
      "title": "Location",
      "editor": "textfield",
      "description": "City, neighborhood, or address used as the search center."
     },
     "maxResults": {
      "type": "integer",
      "title": "Maximum results",
      "editor": "number",
      "maximum": 500,
      "minimum": 1,
      "description": "Override the global result limit for this query."
     }
    }
   },
   "description": "Search businesses by term and locat
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "name": null,
    "phone": null,
    "placeId": null,
    "website": null,
    "placeUrl": null,
    "placeType": null,
    "placeIdHex": null,
    "phoneFormatted": null
   }
  ],
  "product": "apple-maps"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/apple-maps-business-search-place-data-scraper-41b02575/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
