{
  "openapi": "3.0.1",
  "info": {
    "title": "New Business Licenses Scraper | Business License Data",
    "description": "Scrape new business licenses from 11 US and Canadian city open-data portals at $2.50 per 1,000 leads, cheaper than the leading tools. Chicago, New York City, Los Angeles, San Francisco, Seattle and more: business license data with category, issue date and address, plus an only-new daily mode.",
    "version": "0.2",
    "x-build-id": "GLDnXdLHSC12w62OE"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/aurelix~new-business-licenses/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-aurelix-new-business-licenses",
        "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/aurelix~new-business-licenses/runs": {
      "post": {
        "operationId": "runs-sync-aurelix-new-business-licenses",
        "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/aurelix~new-business-licenses/run-sync": {
      "post": {
        "operationId": "run-sync-aurelix-new-business-licenses",
        "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": {
          "cities": {
            "title": "Cities",
            "type": "array",
            "description": "Which city open-data business-licence datasets to read. Example: ['chicago', 'seattle'].",
            "items": {
              "type": "string",
              "enum": [
                "chicago",
                "nyc",
                "los-angeles",
                "san-francisco",
                "seattle",
                "denver",
                "new-orleans",
                "baton-rouge",
                "norfolk",
                "edmonton",
                "calgary"
              ],
              "enumTitles": [
                "Chicago, IL",
                "New York City, NY (DCWP licences)",
                "Los Angeles, CA",
                "San Francisco, CA",
                "Seattle, WA",
                "Denver, CO",
                "New Orleans, LA",
                "Baton Rouge, LA (East Baton Rouge Parish)",
                "Norfolk, VA",
                "Edmonton, AB (Canada)",
                "Calgary, AB (Canada)"
              ]
            },
            "default": [
              "chicago",
              "nyc",
              "los-angeles",
              "san-francisco",
              "seattle",
              "denver",
              "new-orleans",
              "baton-rouge",
              "norfolk",
              "edmonton",
              "calgary"
            ]
          },
          "daysBack": {
            "title": "Issued in the last N days",
            "minimum": 0,
            "maximum": 90,
            "type": "integer",
            "description": "Keep licences dated on or after today minus this many days (UTC); with 'Only new since last run' on, this is the look-back of each city's first run only. Example: 7 for a weekly list. At most 90. Some cities publish late, so for a daily feed use the only-new mode.",
            "default": 30
          },
          "sinceDate": {
            "title": "Since date (optional)",
            "type": "string",
            "description": "Instead of days back: keep licences issued on or after this date, e.g. 2026-01-31 (at most 90 days ago). Leave empty to use 'Issued in the last N days'."
          },
          "categories": {
            "title": "Business categories",
            "type": "array",
            "description": "Keep only these normalised categories, e.g. ['Food and drink', 'Construction and trades']. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "Food and drink",
                "Beauty and personal care",
                "Health and wellness",
                "Construction and trades",
                "Automotive",
                "Transportation and logistics",
                "Childcare and education",
                "Entertainment and events",
                "Real estate and property",
                "Cleaning and home services",
                "Manufacturing and wholesale",
                "Professional services",
                "Technology",
                "Retail",
                "Other"
              ]
            },
            "default": []
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Keep leads whose business name, DBA, licence type or NAICS description contains one of these (case-insensitive), e.g. ['salon', 'restaurant', 'contractor']. Empty = all.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "maxResultsPerCity": {
            "title": "Max results per city",
            "minimum": 0,
            "maximum": 25000,
            "type": "integer",
            "description": "Upper limit of leads per city after filters, newest first. 0 = no limit (at most 25,000 rows are read per city).",
            "default": 1000
          },
          "incremental": {
            "title": "Only new since last run",
            "type": "boolean",
            "description": "Return only businesses not returned by an earlier run with the same categories and keywords (or the same memory name). Each run reads the last 90 days, and the newest accounts in Los Angeles, Denver and Baton Rouge, so licences a city publishes late still arrive once. Schedule it daily for a fresh-lead feed.",
            "default": false
          },
          "stateKey": {
            "title": "Memory name (optional)",
            "type": "string",
            "description": "Name for the 'only new' memory. Leave empty to derive it from categories and keywords; set it to keep separate feeds apart, e.g. 'chicago-food'."
          },
          "slackWebhookUrl": {
            "title": "Slack webhook URL (optional)",
            "type": "string",
            "description": "After each run, post a short digest to Slack: how many leads were saved (new ones only when 'Only new since last run' is on) and the top 10, e.g. https://hooks.slack.com/services/T000/B000/XXXX. Nothing is posted when the run saved nothing."
          },
          "webhookUrl": {
            "title": "Webhook URL (optional)",
            "type": "string",
            "description": "After each run, POST the same digest as JSON (actor, newOnly, count, items = top 10, runUrl, text) to any URL, e.g. a Zapier, Make or n8n webhook. Nothing is sent when the run saved nothing."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}