# Liquor License Openings: New Bars & Stores (US) (`offerastudio/liquor-license-openings`) Actor

New US liquor licences from official state open data, in one schema: New York, Texas, Colorado, Missouri and Chicago. Filter by issue date, category (bar or restaurant, store, manufacturer, wholesaler), city, county and ZIP. Business data only. Leads for POS, distributors, insurers and suppliers.

- **URL**: https://apify.com/offerastudio/liquor-license-openings.md
- **Developed by:** [Offera Studio](https://apify.com/offerastudio) (community)
- **Categories:** Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 licence returneds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### What does Liquor License Openings do?

**Liquor License Openings** finds **newly issued liquor licences in the US**, straight from the **official open data of state liquor authorities**, and returns them in **one schema**, whatever the state. Pick the states, how far back to look and what kind of business you want: new **bars and restaurants**, **liquor and grocery stores**, **breweries, wineries and distilleries**, or **wholesalers**. For every licence you get:

- 🏷️ **state, licence ID and licence type**: the original type name plus a **normalised category** (on-premises, off-premises, manufacturer, wholesaler, other) that works across states
- 🏢 **legal name and DBA** (the trade name of the premises), exactly as the agency publishes them
- 📍 **premises address, city, county and ZIP code**
- 📅 **original issue date, status and expiration date**
- 🔗 a **link to the source dataset** on the official open data portal

States covered today: **New York** (State Liquor Authority), **Texas** (TABC), **Colorado** (Liquor Enforcement Division), **Missouri** (Division of Alcohol and Tobacco Control) and **Chicago, Illinois** (business licences with liquor classes). They are added only when an official dataset exists that is refreshed regularly and has an issue date.

**Business data only.** The Actor returns businesses and their premises. It does not return owners' or applicants' names, dates of birth, phone numbers or mailing addresses, and it leaves out the datasets and records that are about individuals (for example Colorado's "Associated Person" records). Where a licence is held by a sole proprietor, the holder's name is left out and the business name is kept.

### Who is it for?

- **POS and payment providers, restaurant software and delivery platforms**: reach new bars and restaurants in their first weeks.
- **Beverage distributors and food suppliers**: find new accounts by city, county or ZIP.
- **Insurance agents and brokers**: liquor liability and business insurance for new licensees.
- **Local marketing, signage and equipment companies**: a daily list of what is opening nearby.
- **Market researchers and journalists**: count and map new licences by state, category and place.

### How to use it

1. Click **Start** with the default input: **New York and Texas, the last 30 days, on-premises licences, up to 100**.
2. Choose other **States**, a start date (**Issued since**: a date like `2026-09-01` or a relative `30 days`), the **Licence categories** and, if you like, **Cities**, **Counties** or **ZIP codes** (a ZIP or a prefix such as `787`).
3. Set **Maximum licences**. Results are **newest first and spread evenly over the states you chose**, so one state with fresher data does not take every place.
4. **Schedule** the Actor (for example weekly) and send the dataset to your CRM, a spreadsheet or Slack.

### Input example

```json
{
    "states": ["NY", "TX"],
    "issuedSince": "30 days",
    "categories": ["on-premises"],
    "cities": ["Houston", "Brooklyn"],
    "zipCodes": [],
    "activeOnly": true,
    "maxResults": 100
}
```

| Field | Meaning |
| --- | --- |
| `states` | `NY`, `TX`, `CO`, `MO`, `IL` (IL = the City of Chicago only). |
| `issuedSince` | Original issue date on or after this date; absolute (`2026-09-01`) or relative (`30 days`, `2 weeks`, `1 month`). Default: 30 days. |
| `categories` | `on-premises`, `off-premises`, `manufacturer`, `wholesaler`, `other`. Empty = the first four. |
| `cities`, `counties`, `zipCodes` | Optional location filters. ZIP codes match by prefix. |
| `activeOnly` | Skip expired, cancelled or surrendered licences (default on). |
| `maxResults` | 1 to 5,000, default 100. |

### Output example

Real output of a local run on 2 October 2026 with the default input (shortened to six rows):

| Issued | State | Business (DBA) | Legal name | Licence type | City | ZIP |
| --- | --- | --- | --- | --- | --- | --- |
| 2026-10-01 | NY | UTHAI BISTRO | THAI TO YOU INC | Restaurant | Woodbury | 11797 |
| 2026-10-01 | NY | ZAO MEN QIAN HOT POT | ZAO MEN QIAN INC | Restaurant | Flushing | 11355 |
| 2026-10-01 | NY | GALLOWAY GRILL | 62 GALLOWAY ROAD LLC | Restaurant | Warwick | 10990 |
| 2026-09-25 | TX | MOD Pizza | New Vibes Holdings LLC | BE - Retail Dealer’s On-Premise License | Burleson | 76028 |
| 2026-09-22 | TX | TAQUERIA MEXICO 3 | LAS MARIAS M\&I INC | MB - Mixed Beverage Permit | Harker Heights | 76548 |
| 2026-09-22 | TX | … | … | MB - Mixed Beverage Permit | … | … |

One item:

```json
{
    "state": "TX",
    "licenseId": "200207382",
    "licenseType": "MB - Mixed Beverage Permit",
    "licenseTypeCode": "MB",
    "licenseCategory": "on-premises",
    "licenseCategoryLabel": "On-premises (bar, restaurant, club, hotel)",
    "legalName": "LAS MARIAS M&I INC",
    "dba": "TAQUERIA MEXICO 3",
    "premisesAddress": "526 E FM 2410 RD",
    "city": "Harker Heights",
    "county": "Bell",
    "zip": "76548",
    "originalIssueDate": "2026-09-22",
    "status": "Active",
    "isActive": true,
    "expirationDate": "2028-09-21",
    "sourceDataset": "TABC License Information (Texas Alcoholic Beverage Commission)",
    "sourceUrl": "https://data.texas.gov/d/7hf9-qc9f",
    "retrievedAt": "2026-10-02T06:11:29.396Z",
    "error": null,
    "errorMessage": null
}
```

Rows with an `error` code cost nothing: `no-results` (nothing matched), `invalid-input`, `rate-limited`, `source-unavailable` (a state's portal could not be read; the other states still run).

### Where the data comes from, and how fresh it is

| State | Official dataset | Original issue date comes from | Refresh and lag |
| --- | --- | --- | --- |
| New York | [Current Liquor Authority Active Licenses](https://data.ny.gov/d/9s3h-dpkz) (State Liquor Authority) | `originalissuedate` | daily; newest record 1 day old on 2 October |
| Texas | [TABC License Information](https://data.texas.gov/d/7hf9-qc9f) (Alcoholic Beverage Commission) | `original_issue_date` | daily; newest record about a week old |
| Colorado | [Recently Approved Liquor Licenses in Colorado](https://data.colorado.gov/d/htyp-tqzh) (Department of Revenue) | `issue_date` | monthly (6th of the month): up to a month behind; no county or expiration |
| Missouri | [New Liquor Licenses](https://data.mo.gov/d/dymb-xy5c) (Division of Alcohol and Tobacco Control) | `original_date` | rolling: only the newest weeks (11 to 30 September on 2 October) |
| Illinois | [Business Licenses](https://data.cityofchicago.org/d/r5kz-chrr) (City of Chicago), liquor classes, new licences only | `date_issued` | daily; Chicago only, not the rest of Illinois |

Each portal publishes its own terms; see the "Data and terms" section.

### How much does it cost?

This Actor uses **pay per event**:

| Event | Price |
| --- | --- |
| Licence returned | **$0.002** per licence |
| Error rows, "no results" rows and info rows | **free** |

- 100 licences cost **$0.20**; the default run (100 licences) costs **$0.20**; 1,000 cost **$2**.
- The open data portals are free. An optional free **Socrata app token** (environment variable `SOCRATA_APP_TOKEN`, set by whoever runs the Actor) only raises the portals' rate limits; it is never needed for the default run and never appears in the output.
- Set **Maximum cost per run** in the run options and the Actor stops when it is reached.

### Data and terms

The data is published by the state agencies and cities named above on their open data portals (Socrata): New York (data.ny.gov, Open NY terms of use), Colorado (data.colorado.gov, marked public domain), Texas (data.texas.gov), Missouri (data.mo.gov; the state disclaims warranties and may change or stop the feeds) and Chicago (data.cityofchicago.org, City of Chicago terms of use). Always check the source dataset for the current terms. The data is public record about businesses; **you** are responsible for how you use it, including marketing rules (for example CAN-SPAM, TCPA, state do-not-call lists). The Actor does not provide contact details such as phone numbers or e-mail addresses.

### Limitations

- **Five datasets, not all states.** Many states do not publish a regularly refreshed liquor-licence dataset with an issue date; the ones above are the ones that do and that could be verified. Washington's application feed lists applicants with dates of birth, so it is not used.
- **The datasets lag the agencies**: Colorado by up to a month, Texas by days, Missouri only shows the newest weeks. A 30-day window can therefore have fewer than 30 days of data for some states.
- **Categories are a mapping.** The agencies' types are mapped to five categories by rules you can read in `licenseType`. Texas's wine and malt beverage retailer's permit (BG) can sell for on- and off-premise consumption and is counted as on-premises. Check `licenseType` for edge cases.
- **Original issue date**: for Texas it is the date the licence was first issued to the holder; a licence at a new location of an existing holder can carry an older date. For Chicago only new (ISSUE) licences are returned, not renewals.
- **Names are as published**: legal names and DBAs are the agencies' text, usually upper case. A few records lack a DBA.
- Colorado's dataset has no county, so a county filter returns nothing for CO. Missouri sole proprietors have no legal name in the output.
- Without an app token the portals may throttle shared IP addresses; the Actor waits and retries, and reports `rate-limited` if a portal keeps refusing.

### FAQ

#### Is this official data?

Yes. It is read from the state agencies' and the City of Chicago's own open data datasets, and every row links to the dataset it came from.

#### Why is a state missing from my results?

Either it has no licences in your window (check the lag in the table above), your filters exclude them, or its portal could not be read (a free `source-unavailable` row says so).

#### Can I get phone numbers or e-mail addresses?

No. The datasets used here have no business e-mail addresses, and the Actor deliberately leaves out phone numbers and owner contact data. Use the premises address and business name to look up contacts through your own sources.

#### Why do I get the same number of licences from each state?

Results are spread evenly over the chosen states, newest first within each state, so every state is represented. Raise **Maximum licences** to get more.

#### Can I run it every week?

Yes. Schedule it with "Issued since" set to `7 days` (or a little more, to be safe) and de-duplicate on `state` and `licenseId`.

### More tools from the same developer

All pay-per-result, no proxy or login needed, built and maintained by the same developer:

**Website audits**

- [Website Accessibility Checker: WCAG 2.2 & EAA](https://apify.com/offerastudio/website-accessibility-audit): accessibility issues with fixes, SEO basics and security headers.
- [Cookie & Tracker Audit: GDPR Consent Checker](https://apify.com/offerastudio/cookie-tracker-audit): cookies and tracking tags that load before consent.
- [AI Crawler Access Checker: robots.txt & llms.txt](https://apify.com/offerastudio/ai-crawler-access-audit): which AI crawlers a site allows, plus llms.txt.
- [Structured Data Validator: Schema & Rich Results](https://apify.com/offerastudio/structured-data-validator): JSON-LD and Microdata checked against Google's rich result rules.
- [Website Change Monitor: Diffs, Prices & Alerts](https://apify.com/offerastudio/website-change-monitor): get a row only when a page changes, with a clean diff.
- [Policy Change Monitor: Privacy & Terms Tracker](https://apify.com/offerastudio/policy-change-monitor): privacy policy and terms changes, classified clause by clause.
- [SaaS Pricing Monitor: Track Competitor Plans](https://apify.com/offerastudio/saas-pricing-monitor): competitor pricing plans as structured data, with price-change diffs.
- [Sitemap Change Monitor: New & Removed URLs](https://apify.com/offerastudio/sitemap-change-monitor): new, removed and changed URLs from a site's sitemaps.
- [Site SEO Crawler: Broken Links & On-Page Audit](https://apify.com/offerastudio/site-seo-crawler-audit): site-wide crawl for broken links, redirects and on-page SEO issues.
- [Website Tech Stack Detector: Bulk Lead Filters](https://apify.com/offerastudio/website-tech-stack-detector): technologies used by websites, with filters for lead lists.
- [Domain Availability & Expiry Checker (RDAP)](https://apify.com/offerastudio/domain-whois-availability): domain availability, registrar and expiry dates from RDAP.
- [Status Page SLA Monitor: Uptime & Incidents](https://apify.com/offerastudio/status-page-sla-monitor): SaaS vendor uptime, incidents and a monthly SLA table from public status pages.

**Company data and compliance**

- [Company Contact Finder: Emails, Phones & Socials](https://apify.com/offerastudio/company-contact-finder): contact details published on company websites.
- [UK New Companies Feed: Companies House Daily](https://apify.com/offerastudio/uk-new-companies-feed): newly incorporated UK companies with sector filters.
- [EU VAT Number Validator: Bulk VIES Checker](https://apify.com/offerastudio/eu-vat-number-validator): bulk VAT checks with name, address and consultation number.
- [LEI Corporate Tree: GLEIF Parents & Subsidiaries](https://apify.com/offerastudio/gleif-lei-corporate-tree): LEI lookup with parents, subsidiaries and a KYC summary.
- [UK Company Distress Watch: Insolvency Alerts](https://apify.com/offerastudio/uk-company-distress-watch): administrations, liquidations and winding-up petitions from The Gazette.
- [IBAN Validator: Bulk Check & Bank Lookup](https://apify.com/offerastudio/iban-bank-validator): IBAN format and checksum, plus bank name and BIC where open data exists.
- [Sanctions Screening: OFAC, EU, UN & UK Lists](https://apify.com/offerastudio/sanctions-screening): names screened against official sanctions lists, with match scores.
- [OSHA & EPA Violation Monitor: Fines by Company](https://apify.com/offerastudio/osha-epa-violation-monitor): US OSHA and EPA enforcement cases and penalties by company.
- [Email List Precheck: Syntax, MX & Disposable Check](https://apify.com/offerastudio/email-list-precheck): cheap email list hygiene before a real verification.
- [UK Company Officer Changes: Director & PSC Alerts](https://apify.com/offerastudio/uk-company-officer-changes): director, owner, address and status changes for a watchlist of UK companies.
- [FDA Warning Letters Monitor: By Company & Subject](https://apify.com/offerastudio/fda-warning-letters-monitor): FDA warning letters by company and subject, with cited regulations.
- [Supplier Risk Report: Sanctions, VAT & Insolvency](https://apify.com/offerastudio/supplier-risk-report): one risk row per supplier from eight official registers, with changes since last run.
- [Brand Impersonation Domain Monitor: Look-alikes](https://apify.com/offerastudio/brand-impersonation-domain-monitor): look-alike domains and certificates that imitate your brand, with a risk score.

**Media and AI**

- [Audio & Video Transcriber: Podcasts, SRT, Speakers](https://apify.com/offerastudio/audio-video-transcriber): audio, video, podcasts and social links to text, SRT and VTT.
- [Podcast Mention Alerts: Brand Mentions by Second](https://apify.com/offerastudio/podcast-mention-alerts): where your brand is said in new podcast episodes, with the exact second.
- [News Brand Mentions Monitor: New Articles Only](https://apify.com/offerastudio/news-brand-mentions-monitor): new news articles about your brand, people or topics.
- [YouTube Channel Monitor: New Videos & Growth](https://apify.com/offerastudio/youtube-channel-monitor): new videos and view growth of the channels you watch.

**Market signals**

- [US WARN Layoff Notices: 12 States Daily Feed](https://apify.com/offerastudio/us-warn-layoff-notices): layoff and plant closure notices from official state sources.
- [US Product Recalls Monitor: FDA & CPSC Feed](https://apify.com/offerastudio/us-product-recalls-monitor): FDA and CPSC recalls in one feed, with severity.
- [EU Tenders Feed: TED Public Procurement Alerts](https://apify.com/offerastudio/eu-tender-feed): EU public tenders from TED with CPV, country and value filters.
- [Clinical Trials Change Monitor: Status & Updates](https://apify.com/offerastudio/clinicaltrials-change-monitor): status, enrollment and results changes on ClinicalTrials.gov studies.
- [Career Site Jobs Monitor: ATS Jobs & New Roles](https://apify.com/offerastudio/career-site-jobs-monitor): open roles from company career sites, with new and closed roles since the last run.
- [App Reviews Monitor: App Store & Google Play](https://apify.com/offerastudio/app-store-reviews-monitor): app reviews from both stores, only new ones in monitor mode.
- [US Federal Contracts Feed: SAM.gov & USAspending](https://apify.com/offerastudio/us-federal-contracts-feed): SAM.gov contract opportunities with the buyer's award history.
- [Grants.gov Opportunities: US Federal Grants Feed](https://apify.com/offerastudio/grants-gov-opportunities): US federal grant opportunities by keyword, eligibility and agency.
- [Federal Register Monitor: US Rules & Notices Feed](https://apify.com/offerastudio/federal-register-monitor): new US rules, proposed rules and notices by agency or topic.
- [B2B Sales Trigger Feed: Hiring + Tech Leads](https://apify.com/offerastudio/b2b-sales-trigger-feed): companies hiring for a role and using (or not using) a technology, with contacts.
- [Local Business Leads: OpenStreetMap, No Website](https://apify.com/offerastudio/local-business-leads-osm): local businesses by city and category, including those with no website.
- [Solana Token Pair Monitor: New & Trending Pairs](https://apify.com/offerastudio/solana-token-pair-monitor): new and trending Solana pairs with liquidity, volume and safety flags.

### Feedback

Know an official liquor-licence dataset that is refreshed regularly and has an issue date? Open an issue on the **Issues** tab.

# Changelog

This Actor's version history is a separate document: https://apify.com/offerastudio/liquor-license-openings/changelog.md

# Actor input Schema

## `states` (type: `array`):

Which states' official open data to read. Chicago stands for the City of Chicago's business licences (liquor classes) in Illinois.

## `issuedSince` (type: `string`):

Only licences whose original issue date is on or after this date, for example 2026-09-01 or a relative date like "30 days" (30 days ago). Default: the last 30 days. The datasets lag behind the agencies: Colorado is refreshed monthly, Texas by a few days, and Missouri lists only the newest weeks.

## `categories` (type: `array`):

The state licence types are mapped to these categories. Leave empty for the four business categories (everything except Other).

## `cities` (type: `array`):

Only licences at premises in these cities, for example Houston or Brooklyn. Case-insensitive. Leave empty for all.

## `counties` (type: `array`):

Only licences in these counties, for example Harris or Kings. Colorado's dataset has no county, so a county filter returns nothing for CO.

## `zipCodes` (type: `array`):

Only licences whose premises ZIP code starts with one of these (a full ZIP such as 78701 or a prefix such as 787).

## `activeOnly` (type: `boolean`):

Skip licences that the dataset marks as expired, cancelled or surrendered. New York's dataset and Colorado's list contain active licences only.

## `maxResults` (type: `integer`):

Stop after this many licences, newest first, spread evenly over the chosen states. Each licence returned costs $0.002.

## Actor input object example

```json
{
  "states": [
    "NY",
    "TX"
  ],
  "issuedSince": "30 days",
  "categories": [
    "on-premises"
  ],
  "activeOnly": true,
  "maxResults": 100
}
```

# Actor output Schema

## `licenses` (type: `string`):

No description

## `addresses` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "states": [
        "NY",
        "TX"
    ],
    "issuedSince": "30 days",
    "categories": [
        "on-premises"
    ],
    "maxResults": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("offerastudio/liquor-license-openings").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "states": [
        "NY",
        "TX",
    ],
    "issuedSince": "30 days",
    "categories": ["on-premises"],
    "maxResults": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("offerastudio/liquor-license-openings").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "states": [
    "NY",
    "TX"
  ],
  "issuedSince": "30 days",
  "categories": [
    "on-premises"
  ],
  "maxResults": 100
}' |
apify call offerastudio/liquor-license-openings --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,offerastudio/liquor-license-openings"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/Cg7PQAFvevbR5VavH/builds/J0MsZySbz161lfdSx/openapi.json
