Catalog API の検索結果に 「Shopify で販売していないブランド」の商品も含められるように
原題: Search brands that don't sell on Shopify in the Catalog API (beta)
- Catalog API
- ベータ
- 新機能
- Storefront
- Search
- GraphQL
- External Products
- native_checkout
- Promoted Placements
- Product Discovery
図解 : Catalog API で Shopify 外のブランド商品も検索できるように(beta) Catalog API / beta Catalog API の検索結果に 「Shopify で販売していないブランド」の商品も含められるように search_catalog に新しく追加された sources パラメータで、Shopify マーチャントの商品と外部ブランドの商品をひとつのレスポンスで受け取れる。指定しなければ従来どおりなので、既存の呼び出しは変更不要。 このページの構成 そもそも何が変わるのか(30秒で理解) 仕組み図解 : sources で返る範囲を切り替える sources の 3 パターン 外部商品(external)の性質 対象アプリとベータ期間中の制約 対応手順(3ステップ) 技術者が押さえるべき5つのポイント 業務に活かせる3つのユースケース 提案で使える1行サマリ 1 そもそも何が変わるのか これまで Catalog API(beta)の検索結果は Shopify マーチャントの商品だけ だった。 今回から sources パラメータを付ければ、 Shopify で販売していないブランドの商品 も同じレスポンスで返せる。 従来 : Shopify マーチャント商品のみ search_catalog の結果は Shopify で販売している商品に限定。 sources を省略すれば今後もこの挙動のまま。 今後 : 外部ブランド商品も選べる ["shopify","external"] で両方、 ["external"] で外部ブランドのみ。新しいエンドポイントは不要。 2 仕組み図解 : sources で返る範囲を切り替える 新しいエンドポイントは無い。 既存の search_catalog メソッドに sources を足すだけ。 ID 指定の get_product も外部商品の ID を渡せば外部商品を返す。 lookup_catalog の対応は「後日」とされている。 3 sources の 3 パターン sources の値 返る商品 既存コードへの影響 省略 または ["shopify"] Shopify マーチャント商品のみ 変更不要(従来と同じ挙動) ["shopify", "external"] Shopify + 外部 両方 外部商品の扱い(リンク先など)を実装する必要あり ["external"] 外部 Shopify で販売していないブランドのみ 同上 メソッド別の対応状況 対応 search_catalog sources パラメータで外部商品を含められる。 対応 get_product 外部商品の ID を渡すと外部商品を返す。 後日対応 lookup_catalog 「coming later」とのみ記載。時期は記載なし。 4 外部商品(external)の性質 説明文 description 画像 image 価格 price ブランドの商品ページへのリンク 購入はブランド自社サイトで 外部商品は 常に eligible.native_checkout: false 。Shopify checkout で購入できず、 Promoted Placements の手数料(commission)も発生しない 。 5 対象アプリとベータ期間中の制約 影響するアプリ Catalog API でサイト内検索やレコメンドを提供していて、Shopify 外のブランド商品も載せたいアプリ。 米国のショッパーのみ 外部商品が返るのはショッパーが米国にいる場合だけ。他の国では Shopify マーチャント商品のみが返る。 データ元はブランドの Web サイト ベータ期間中、外部商品のデータは各ブランドの Web サイトから取得されている。 日本など米国以外のショッパーには外部商品は返らない。正式リリースの時期、対象国の拡大、データ更新頻度は 記載なし 。 6 対応手順(3ステップ) 1 方針を決める Shopify 商品だけでよければ何もしなくてよい。既存の search_catalog 呼び出しはそのまま動く。 2 sources を追加 両方なら ["shopify","external"] 、外部ブランドだけなら ["external"] をリクエストに追加。 3 リンク先の処理を確認 商品詳細ページへのリンクを出している場合、外部商品はブランドの自社サイトへ遷移するよう URL を正しく扱う。 オプトイン方式なので後方互換。 何もしなければ挙動は変わらない。外部商品を出すかどうかはアプリ側で明示的に選べる。 7 技術者が押さえるべき5つのポイント 1. 既定値は従来どおり(後方互換) sources 省略時は ["shopify"] と同じ。既存実装の回帰リスクは無い。 2. native_checkout で分岐させる 外部商品は常に eligible.native_checkout: false 。カート追加・Shopify checkout 導線を出すかどうかはこのフラグで判定するのが素直。 3. PDP リンクは外部 URL を考慮 外部商品はブランドの商品ページへのリンクを持つ。自前の PDP ルートに決め打ちしているとリンクが壊れるので、URL の扱いを見直す。 4. 地域で結果が変わる 外部商品は米国のショッパーにのみ返る。 ["external"] のみ指定時に米国外ではどう返るか(空になるか等)は記載なし。テストで要確認。 5. メソッドごとに対応状況が違う search_catalog と get_product (外部商品 ID 指定)は対応済み、 lookup_catalog は後日対応。 lookup_catalog に依存した処理で外部商品を扱う設計は、現時点では避けるべき 。 8 業務に活かせる3つのユースケース USE CASE 1 検索・比較系アプリで「品揃えの網羅性」を上げる 課題 Catalog API で商品検索を提供しているが、結果が Shopify マーチャント商品に限られ、ショッパーが探しているブランドが出てこないことがある。 打ち手 search_catalog に sources: ["shopify","external"] を指定し、Shopify 外のブランド商品も同じ結果リストに含める。 効果 米国ショッパー向けに検索結果のカバー範囲が広がり、「見つからない」による離脱を減らせる。 技術メモ 外部商品は native_checkout: false のため、カード UI に「ブランドサイトで購入」等の導線を出し分ける。 USE CASE 2 既存アプリの改修時に「購入導線の出し分け」を設計する 課題 外部商品を混ぜると、自前の PDP やカート追加ボタンが前提の UI では、外部商品で導線が破綻する。 打ち手 レスポンスの eligible.native_checkout で分岐し、 true は従来導線、 false はブランドの商品ページへのリンクに切り替える。 効果 Shopify 商品と外部商品が混在しても、ショッパーが迷わず購入先にたどり着ける。 技術メモ リンク処理の見直しは公式の「What to do」でも明示されている対応事項。 get_product で外部商品 ID を引くケースも同じ分岐を通す。 USE CASE 3 外部商品を含める価値を段階的に検証する 課題 外部商品は Shopify checkout で買えず Promoted Placements 手数料も発生しないため、含めることが自アプリの収益にプラスか判断がつかない。 打ち手 米国ショッパーの一部だけ sources に external を含め、残りは省略のまま比較する。 効果 検索満足度・クリック率と、Shopify 商品の購入への影響を見比べたうえで本格導入の可否を決められる。 技術メモ パラメータの付け外しだけで切り替えられるため、実装コストは小さい。ベータ期間中は米国限定である点を前提に設計する。 9 提案で使える1行サマリ 「Catalog API の search_catalog に sources を足すだけで、Shopify 外のブランド商品も検索結果に出せる(beta・米国のみ)。 既存呼び出しは変更不要・外部商品は native_checkout: false でブランドサイトへ誘導。 導入時は購入導線とリンク先の出し分けだけ押さえればよい。」 source : shopify.dev / changelog / search-brands-that-don-t-sell-on-shopify-in-the-catalog-api-beta 関連 : Global Catalog extension(catalog sources) / Global Catalog MCP tools published 2026-10-27