Catalog API / beta

Catalog API の検索結果に
「Shopify で販売していないブランド」の商品も含められるように

search_catalog に新しく追加された sources パラメータで、Shopify マーチャントの商品と外部ブランドの商品をひとつのレスポンスで受け取れる。指定しなければ従来どおりなので、既存の呼び出しは変更不要。

このページの構成
  1. そもそも何が変わるのか(30秒で理解)
  2. 仕組み図解 : sources で返る範囲を切り替える
  3. sources の 3 パターン
  4. 外部商品(external)の性質
  5. 対象アプリとベータ期間中の制約
  6. 対応手順(3ステップ)
  7. 技術者が押さえるべき5つのポイント
  8. 業務に活かせる3つのユースケース
  9. 提案で使える1行サマリ

1そもそも何が変わるのか

これまで Catalog API(beta)の検索結果は Shopify マーチャントの商品だけだった。
今回から sources パラメータを付ければ、Shopify で販売していないブランドの商品も同じレスポンスで返せる。

従来 : Shopify マーチャント商品のみ

search_catalog の結果は Shopify で販売している商品に限定。sources を省略すれば今後もこの挙動のまま。

今後 : 外部ブランド商品も選べる

["shopify","external"] で両方、["external"] で外部ブランドのみ。新しいエンドポイントは不要。

2仕組み図解 : sources で返る範囲を切り替える

あなたのアプリ サイト内検索 / レコメンド search_catalog sources: [ ... ] 既存メソッドに引数を足すだけ 省略 / ["shopify"] Shopify マーチャント商品のみ(従来どおり) ["shopify", "external"] マーチャント商品 + 外部ブランド商品 ["external"] Shopify で販売していないブランドのみ
新しいエンドポイントは無い。 既存の search_catalog メソッドに sources を足すだけ。
ID 指定の get_product も外部商品の ID を渡せば外部商品を返す。lookup_catalog の対応は「後日」とされている。

3sources の 3 パターン

sources の値返る商品既存コードへの影響
省略 または ["shopify"] Shopify マーチャント商品のみ 変更不要(従来と同じ挙動)
["shopify", "external"] Shopify + 外部 両方 外部商品の扱い(リンク先など)を実装する必要あり
["external"] 外部 Shopify で販売していないブランドのみ 同上

メソッド別の対応状況

対応

search_catalog

sources パラメータで外部商品を含められる。

対応

get_product

外部商品の ID を渡すと外部商品を返す。

後日対応

lookup_catalog

「coming later」とのみ記載。時期は記載なし。

4外部商品(external)の性質

説明文
description
画像
image
価格
price
ブランドの商品ページへのリンク
購入はブランド自社サイトで
ショッパー(米国) 外部商品を選択 native_checkout: false Shopify checkout では買えない Promoted Placements 手数料も対象外 ブランド自社サイトへ遷移 そこで購入を完了
外部商品は 常に eligible.native_checkout: false。Shopify checkout で購入できず、Promoted Placements の手数料(commission)も発生しない。

5対象アプリとベータ期間中の制約

影響するアプリ

Catalog API でサイト内検索やレコメンドを提供していて、Shopify 外のブランド商品も載せたいアプリ。

US

米国のショッパーのみ

外部商品が返るのはショッパーが米国にいる場合だけ。他の国では Shopify マーチャント商品のみが返る。

データ元はブランドの Web サイト

ベータ期間中、外部商品のデータは各ブランドの Web サイトから取得されている。

日本など米国以外のショッパーには外部商品は返らない。正式リリースの時期、対象国の拡大、データ更新頻度は 記載なし。

6対応手順(3ステップ)

1

方針を決める

Shopify 商品だけでよければ何もしなくてよい。既存の search_catalog 呼び出しはそのまま動く。

2

sources を追加

両方なら ["shopify","external"]、外部ブランドだけなら ["external"] をリクエストに追加。

3

リンク先の処理を確認

商品詳細ページへのリンクを出している場合、外部商品はブランドの自社サイトへ遷移するよう URL を正しく扱う。

オプトイン方式なので後方互換。 何もしなければ挙動は変わらない。外部商品を出すかどうかはアプリ側で明示的に選べる。

7技術者が押さえるべき5つのポイント

OPT-IN

1. 既定値は従来どおり(後方互換)

sources 省略時は ["shopify"] と同じ。既存実装の回帰リスクは無い。

true false

2. native_checkout で分岐させる

外部商品は常に eligible.native_checkout: false。カート追加・Shopify checkout 導線を出すかどうかはこのフラグで判定するのが素直。

3. PDP リンクは外部 URL を考慮

外部商品はブランドの商品ページへのリンクを持つ。自前の PDP ルートに決め打ちしているとリンクが壊れるので、URL の扱いを見直す。

US

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 に「ブランドサイトで購入」等の導線を出し分ける。
Shopify カートへ 外部 外部リンク
USE CASE 2

既存アプリの改修時に「購入導線の出し分け」を設計する

課題
外部商品を混ぜると、自前の PDP やカート追加ボタンが前提の UI では、外部商品で導線が破綻する。
打ち手
レスポンスの eligible.native_checkout で分岐し、true は従来導線、false はブランドの商品ページへのリンクに切り替える。
効果
Shopify 商品と外部商品が混在しても、ショッパーが迷わず購入先にたどり着ける。
技術メモ
リンク処理の見直しは公式の「What to do」でも明示されている対応事項。get_product で外部商品 ID を引くケースも同じ分岐を通す。
sources 別に計測
USE CASE 3

外部商品を含める価値を段階的に検証する

課題
外部商品は Shopify checkout で買えず Promoted Placements 手数料も発生しないため、含めることが自アプリの収益にプラスか判断がつかない。
打ち手
米国ショッパーの一部だけ sources に external を含め、残りは省略のまま比較する。
効果
検索満足度・クリック率と、Shopify 商品の購入への影響を見比べたうえで本格導入の可否を決められる。
技術メモ
パラメータの付け外しだけで切り替えられるため、実装コストは小さい。ベータ期間中は米国限定である点を前提に設計する。

9提案で使える1行サマリ

「Catalog API の search_catalog に sources を足すだけで、Shopify 外のブランド商品も検索結果に出せる(beta・米国のみ)。
既存呼び出しは変更不要・外部商品は native_checkout: false でブランドサイトへ誘導。
導入時は購入導線とリンク先の出し分けだけ押さえればよい。」