記事のサマリー(TL;DR)
- Customer Account API version 2026-10から、
CustomerAddressInput入力オブジェクトとCustomerAddressオブジェクトがcountryCodeに対応しました。 - 既存の
territoryCodeフィールドは非推奨(deprecated)となりますが削除はされておらず、古いAPIバージョンを含め既存のクエリ・ミューテーションは引き続き動作します。 - Shopifyは、API version 2026-10を採用する際に
countryCodeへの移行を推奨しています。両方のフィールドが指定された場合はcountryCodeが優先されます。
対象と移行条件
この変更はCustomer Account APIを使って顧客住所の作成・更新・読み取りを行うアプリに影響します。
- API version 2026-10以降を使用するアプリは
countryCodeを利用でき、territoryCodeは非推奨として表示されます。 - API version 2026-07以前を使用するアプリへの影響はなく、引き続き
territoryCodeを使用できます。 - 既存クライアントに対する即時の機能停止はなく、
territoryCodeの削除バージョンは現時点でアナウンスされていません。
詳細
変更内容
CustomerAddressInput入力オブジェクトとCustomerAddressオブジェクトにcountryCodeが追加されました。顧客住所の作成・更新・読み取りの際にcountryCodeを使用します。countryCodeはCountryCode列挙型を使用し、USやCAのようなISO 3166-1 alpha-2形式の国コードを受け付けます。
既存のterritoryCodeフィールドは、API version 2026-10において非推奨と明示されました。ただしterritoryCodeは削除されたわけではなく、これを使用する既存のクエリ・ミューテーションは、古いAPIバージョンを使用する連携を含め、これまで通り動作します。
住所の入力に両方のフィールドが指定された場合は、countryCodeが優先されます。
この変更が重要な理由
Shopifyによると、countryCodeは、Shopifyの他のAPIで使われている「country-code」という用語や、厳密に型付けされたCountryCode列挙型と整合させるものです。これにより入力要件が明確になり、「country」と「territory」という用語の曖昧さを避けられるとしています。
推奨される対応
Customer Account API version 2026-10を採用する際は、以下の対応が推奨されています。
- 顧客住所に関するクエリ・ミューテーションで
territoryCodeが使われていないか確認する。 - 該当箇所を
countryCodeに置き換える。 - USのようなISO 3166-1 alpha-2形式の値を指定し、USAや840のようなalpha-3形式や数値形式は使用しない。
- API version 2026-10に対して、顧客住所の作成・更新・読み取りをテストする。
早期のAPIバージョンにとどまるアプリについては、即時の対応は不要です。territoryCodeはversion 2026-10でも引き続き動作しますが、Shopifyは、将来のAPIバージョンで削除される可能性に備えて移行しておくことを勧めています。
関連ドキュメント
CustomerAddress、CustomerAddressInput、CountryCode