Shopify & Ecommerce Store Finder — Python SDK
Python client for the Shopify & Ecommerce Store Finder Apify Actor. Send public Actor inputs, wait for the hosted run, and receive clean Dataset rows without maintaining scraping infrastructure.
Results
- Platform and country targeting
- Public emails, phones and social profiles
- Firmographic and technology fields
- Sorting, pagination and count-only queries
The repository exposes only the Actor's public input and output contract. Dataset selection and processing remain inside the hosted Actor.
Install
pip install git+https://github.com/apivault-labs/website-leads-database-python.git
Create an Apify token at Console → Integrations, then:
from website_leads_database import WebsiteLeadsDatabaseClient
client = WebsiteLeadsDatabaseClient(api_token="apify_api_xxxxxx")
rows = client.run({'platforms': ['shopify_sites', 'woocommerce_sites'],
'country': ['US'],
'hasEmail': True,
'dedupeByDomain': True,
'outputPreset': 'contacts',
'maxItems': 50})
print(rows[0] if rows else "No results")
You can set APIFY_API_TOKEN instead of passing the token in code.
Public input options
| Field | Type | Default | Description |
|---|---|---|---|
workflow |
string |
auto |
Choose count for audience size or export for rows. The SDK helpers set this automatically. |
outputPreset |
string |
custom |
Use compact, contacts, sales, traffic, full or exact custom columns. |
platforms |
array |
["all"] |
Platform datasets to search, such as Shopify, WooCommerce, WordPress, Wix, Magento or all platforms. |
columns |
array |
[] |
Exact public output-column names. Leave empty to return all available columns. |
sortBy |
string |
`` | Optional public column used to order rows before applying the limit. |
country |
array |
[] |
ISO-2 country codes such as US, GB or DE. |
keyword |
string |
`` | Substring matched against the domain or company name. |
phoneCode |
string |
`` | Keep sites with at least one public phone beginning with this country code. |
filters |
array |
[] |
Additional public column conditions using column, operator and value fields. |
hasEmail |
boolean |
False |
Return only records with a public email. |
hasPhone |
boolean |
False |
Return only records with a public phone. |
sortDesc |
boolean |
True |
Return highest sort values first. |
dedupeByDomain |
boolean |
False |
Remove repeated root domains within the selected window. |
countOnly |
boolean |
False |
Return match counts instead of exporting website rows. |
onlyWithTrafficData |
boolean |
False |
Keep only rows with traffic data. |
minMonthlyVisits |
integer |
Optional minimum monthly visits for traffic-qualified exports. | |
maxMonthlyVisits |
integer |
Optional maximum monthly visits for traffic-qualified exports. | |
maxItems |
integer |
1000 |
Maximum returned rows across selected platforms. |
offset |
integer |
0 |
Rows to skip for stable pagination across runs. |
The complete, versioned schema is also available on the Actor page.
Pricing
Pay per delivered result through Apify, starting around $8/1,000 results on paid tiers. Free-plan pricing and platform usage can differ; check the Actor page before large runs.
Examples
examples/count_segment.py— inspect audience size before exportexamples/sample_50.py— review a safe 50-row sampleexamples/export_contacts.py— save Shopify contacts to CSVexamples/traffic_qualified_export.py— prioritize stores by audience sizeexamples/resume_next_page.py— continue with the Actor-provided next-page inputexamples/quickstart.py— minimal first runexamples/export_csv.py— save flat result fieldsexamples/save_json.py— preserve nested outputexamples/cost_estimate.py— estimate result-event chargesexamples/environment_token.py— keep credentials out of code
Use client.count(...) before a large request. Use client.run_page(...) when you
need the copy-ready continuation returned by the hosted Actor.
Architecture and privacy
This repository is intentionally a thin API client. Collection, retries, analysis and billing run inside the hosted Apify Actor. No private implementation, credentials, scoring weights or infrastructure configuration are included.
License
MIT. The hosted Actor is a separate paid service governed by Apify terms.
Release files for website-leads-database 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| website_leads_database-0.2.0.tar.gz | 8.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| website_leads_database-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.1 kB
Release files / website_leads_database-0.2.0.tar.gz
| Download URL | website_leads_database-0.2.0.tar.gz |
|---|---|
| Size | 8.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
58a25acf8ed0065415f559a2c874fe7664d6e6cb3465bdb4639921ffd243b845
|
|
BLAKE2b-256 checksum How to use checksums |
e9961a2d5d819f2be776f37be9ea10f993d06f27e146cf25d1eb611e7cde4989
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / website_leads_database-0.2.0-py3-none-any.whl
| Download URL | website_leads_database-0.2.0-py3-none-any.whl |
|---|---|
| Size | 7.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
897482286a7d66958e897f00f81cc6b8cb20d5e49e6bdf6d82e1faa6264cf992
|
|
BLAKE2b-256 checksum How to use checksums |
c651fbea0677d6a3a5cf8f2d648fd3768b317c64319ef9da623ad3a78596209c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|