{
  "openapi": "3.0.1",
  "info": {
    "title": "Google Maps Results Processor — clean, filtered outreach leads",
    "description": "Turn raw Google Maps Scraper (compass/crawler-google-places) output into clean, flat, filtered, outreach-ready files: CSV, Excel, Instantly, Smartlead, GoHighLevel, HubSpot and dialer formats.",
    "version": "0.3",
    "x-build-id": "iaBTKolzZZt8Ggm43"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/vasram~google-maps-results-converter/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-vasram-google-maps-results-converter",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/vasram~google-maps-results-converter/runs": {
      "post": {
        "operationId": "runs-sync-vasram-google-maps-results-converter",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/vasram~google-maps-results-converter/run-sync": {
      "post": {
        "operationId": "run-sync-vasram-google-maps-results-converter",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "source_datasetId": {
            "title": "Dataset ID (from Google Maps Scraper)",
            "type": "string",
            "description": "What it does: Connects your scraping run to this converter. What to enter: Copy and paste the Dataset ID from your Google Maps Scraper run page (Storage tab). Example: AbCdEf123456"
          },
          "source_datasetIds": {
            "title": "Multiple Dataset IDs (merge several cities)",
            "type": "array",
            "description": "What it does: Merges multiple scrapes into one deduplicated master list. What to enter: A list of multiple Dataset IDs.",
            "items": {
              "type": "string"
            }
          },
          "source_scrapedDataJson": {
            "title": "Raw JSON Data (for quick tests)",
            "description": "What it does: Allows you to process a raw JSON array directly. What to enter: A valid JSON array of scraped places."
          },
          "fields_preset": {
            "title": "Lead type",
            "enum": [
              "simple-leads",
              "lead-scoring",
              "web-design-prospects",
              "reputation-prospects",
              "cold-calling",
              "cold-email",
              "full-flat"
            ],
            "type": "string",
            "description": "What it does: Automatically picks the right columns and filters for your campaign. What to select: Choose the preset that best fits your outreach strategy.",
            "default": "simple-leads"
          },
          "fields_presets": {
            "title": "Multiple Lead Types (optional)",
            "type": "array",
            "description": "What it does: Generates several lead lists from one scrape. What to enter: Multiple preset names to get separate files for each.",
            "items": {
              "type": "string"
            }
          },
          "dedup_enabled": {
            "title": "Remove duplicate places",
            "type": "boolean",
            "description": "What it does: Merges duplicate places that appear in overlapping search grids. What to enter: Check the box to enable (recommended).",
            "default": true
          },
          "clean_removeClosed": {
            "title": "Remove closed businesses",
            "type": "boolean",
            "description": "What it does: Drops permanently and temporarily closed businesses. What to enter: Check the box to keep only active companies.",
            "default": true
          },
          "clean_normalizePhones": {
            "title": "Normalize phone numbers to E.164 (+1… format)",
            "type": "boolean",
            "description": "What it does: Converts local formats like '(512) 555-0199' into international '+15125550199'. What to enter: Check the box for CRM and dialer compatibility.",
            "default": true
          },
          "filters_websitePresence": {
            "title": "Website status",
            "enum": [
              "any",
              "withWebsite",
              "withoutWebsite"
            ],
            "type": "string",
            "description": "What it does: Filters businesses based on their website presence. What to select: Choose 'Only WITHOUT a website' to find businesses needing web development.",
            "default": "any"
          },
          "filters_minRating": {
            "title": "Minimum Google rating (≥)",
            "minimum": 1,
            "maximum": 5,
            "type": "number",
            "description": "What it does: Keeps only places rated at or above this value. What to enter: A number between 1.0 and 5.0."
          },
          "filters_minReviews": {
            "title": "Minimum number of reviews (≥)",
            "minimum": 0,
            "type": "integer",
            "description": "What it does: Keeps only places with at least this many reviews. What to enter: A whole number (0 or higher)."
          },
          "filters_hasPhone": {
            "title": "Only places with a phone number",
            "type": "boolean",
            "description": "What it does: Keeps only businesses that have a valid phone number. What to enter: Check the box to ensure all leads are callable.",
            "default": false
          },
          "filters_hasEmail": {
            "title": "Only places with an email address",
            "type": "boolean",
            "description": "What it does: Keeps only businesses with an email address. What to enter: Check the box to filter leads for email campaigns.",
            "default": false
          },
          "filters_claimed": {
            "title": "Google Business Profile claimed status",
            "enum": [
              "any",
              "claimed",
              "unclaimed"
            ],
            "type": "string",
            "description": "What it does: Filters by whether the business has claimed its Google profile. What to select: Choose 'Only UNCLAIMED' for optimization leads.",
            "default": "any"
          },
          "filters_categoriesInclude": {
            "title": "Filter by business categories",
            "type": "array",
            "description": "What it does: Keeps only businesses in the specified categories. What to enter: A list of business types. Leave empty for all.",
            "items": {
              "type": "string"
            }
          },
          "filters_cities": {
            "title": "Filter by cities",
            "type": "array",
            "description": "What it does: Keeps only places in the specified cities (smart matching ignores diacritics). What to enter: A list of city names. Leave empty for all.",
            "items": {
              "type": "string"
            }
          },
          "output_formats": {
            "title": "Export formats",
            "type": "array",
            "description": "What it does: Selects which file formats to generate. What to enter: File types like csv, excel, json, gohighlevel, instantly, etc.",
            "default": [
              "csv"
            ],
            "items": {
              "type": "string"
            }
          },
          "output_fileName": {
            "title": "File name (without extension)",
            "type": "string",
            "description": "What it does: Sets the base name for your exported files. What to enter: A custom file name. Example: 'austin-plumbers'",
            "default": "google-maps-leads"
          },
          "delta_baselineDatasetId": {
            "title": "Baseline Dataset ID (previous scrape)",
            "type": "string",
            "description": "What it does: Reports new, closed, or changed businesses versus a previous run. What to enter: The Dataset ID of your PREVIOUS Google Maps Scraper run."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}