~/business/shopify-store-leads
Shopify ストアリード — カタログ規模・アプリ・連絡先
見込み度を判断できる数値つきの Shopify ストアリード——商品点数、価格帯、テーマ、導入アプリ、商品公開ペース、ビジネス連絡先。条件で新規ストアを発見することも、手持ちのドメインをエンリッチすることもできます。
リードデータ
TypeScriptCheerio
全世界
カテゴリbusiness / リードデータ
言語TypeScript
スタックTypeScript, Cheerio
マーケット全世界
出力クリーンでRAG対応のJSON
主な機能
カタログ規模・価格帯・商品タイプ——ドメインとメールアドレスだけではありません
ストアごとに導入アプリとテーマを判定
公開ペース——月あたりの新商品数と、最後の公開からの経過日数
Shop app の検索で販売商品からストアを発見、または手持ちドメインをエンリッチ
条件で除外されたストアには一切課金されません
公開されていれば、ビジネスメール・電話番号・SNS アカウントも取得
Shop app に掲載されたストアには、その Shop app 評価と事業所住所も付与
活用例
- Shopify 事業者向けに販売するアプリ・代理店・物流事業者の BtoB 開拓
- 競合アプリをまだ導入していないストアの抽出
- 国・カテゴリ・カタログ規模によるマーケットマッピング
- 既存のドメインリストへカタログと技術構成データを付与
- 事業活動状況と価格帯によるM&A候補の探索
- コマース AI 向けの DTC ブランドデータセット構築
入力パラメータ
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
storeUrls | array | 任意 | プロファイルするドメイン——指定すると発見処理はスキップされます |
query | string | 任意 | この商品を扱うストアを検索——Shop app で検索し、ストアはすべてその結果から取得。useShopApp をオフにした場合や自前の storeUrls では、ストア名・説明・ドメインと照合 |
category | string | 任意 | 商品カテゴリ。キーワード未指定なら Shop app で検索し、それ以外はストア自身の商品タイプと照合します |
countries | array | 任意 | 2 文字の国コード(例:US、GB) |
minProducts | number | 任意 | 商品点数がこれ未満のストアを除外 |
activeWithinDays | number | 任意 | この日数以内に商品を公開したストアのみ |
hasApps | array | 任意 | これらのアプリを利用中のストアのみ(handle で指定) |
excludeApps | array | 任意 | これらのアプリを既に利用中のストアを除外 |
requireEmail | boolean | 任意 | ビジネスメールを公開しているストアのみ |
maxItems | number | 任意 | 返却するストア数の上限——実行コストの上限そのもの |
useShopApp | boolean | 任意 | 既定でオン:キーワードまたはカテゴリを Shop app で検索し、各ストアに Shop app の評価と事業所住所を付与 |
出力例
1{
2 "url": "https://www.gorjana.com/",
3 "domain": "www.gorjana.com",
4 "myshopifyDomain": "gorjana.myshopify.com",
5 "name": "gorjana",
6 "country": "US",
7 "province": "California",
8 "city": "Laguna Beach",
9 "address": ["3275 Laguna Canyon Rd Ste R1", "Laguna Beach, California 92651", "United States"],
10 "currency": "USD",
11 "catalog": {
12 "productCount": 983,
13 "collectionCount": 575,
14 "priceMin": 3000,
15 "priceMax": 599000,
16 "priceAvg": 17884,
17 "productTypes": ["Anklets", "Bracelets", "Charms", "Earrings", "Gift Cards", "Hand Chains", "Necklaces", "Rings"],
18 "sizeBand": "medium"
19 },
20 "activity": {
21 "daysSinceLastProduct": 1,
22 "isActive": true,
23 "productsPerMonth": 28.9
24 },
25 "theme": { "name": "[RELEASE] 5.2.0", "id": 166571606147 },
26 "apps": [{ "handle": "klaviyo", "name": "Klaviyo" }, { "handle": "okendo", "name": "Okendo" }],
27 "contacts": {
28 "emails": ["[email protected]"],
29 "phones": ["8668290030"],
30 "socials": { "instagram": "https://www.instagram.com/gorjana", "tiktok": "https://www.tiktok.com/@gorjana" }
31 },
32 "rating": { "average": 4.81, "ratingCount": 18510, "reviewCount": 4610 },
33 "discoveredVia": "input",
34 "scrapedUTC": 1790214009
35}
知っておきたい 2 つの規約があります。価格は最小単位の整数なので 17884 は $178.84 を意味し、タイムスタンプは UNIX 秒です。
ヒント
- 本当の稼働シグナルは productsPerMonth です。 月に 30 商品を公開するストアと、直近 30 商品を 4 年かけて公開したストアを区別できます——isActive はどちらも「稼働中」と判定します。
- maxItems が支出の上限です。 1 回の実行が返却でき、したがって課金しうる行数のハードリミットです。行の内容を確認してから引き上げてください。
- 除外されたストアは無料です。 フィルタは課金より前に適用されるため、厳しい条件で切り捨てたストアには費用が発生しません。
- excludeApps と minProducts を組み合わせれば、 すでに一定規模がありながら、あなたの商材をまだ導入していない事業者のリストが作れます。
よくある質問
すでに知っているストアに対しても使えますか?
はい。storeUrls にドメインを貼り付ければ発見処理は完全にスキップされ、指定したストアの完全なプロファイルが返ります。空欄にすれば Actor がストアを発見します——キーワードかカテゴリを指定すると Shop app の検索から。どちらの場合も条件は適用されます。
競合アプリを導入していないストアを探すには?
競合アプリの handle を excludeApps に指定します。minProducts や activeWithinDays と組み合わせれば、アプローチする価値があるだけの規模があり、かつ現在も営業しているストアが得られます。
policies が空になることがあるのはなぜですか?
空のリストは、そのストアが Shopify の正規 URL でポリシーを公開していないことを示すだけで、返品ポリシーが存在しないという意味ではありません。一般的なストアのおよそ 8 割は正規形式を使いますが、大手 DTC ブランドの多くは使いません。