Shopify APIの使い方をご存知でしょうか。
数あるECプラットフォームの中でも、カスタマイズの自由度が高く、
思い通りのストアを作成することが出来ると近年利用者が増えているShopify。
Shopifyで用意されている基本機能の他に必要なツールをストアに設定するためには、Shopifyが提供しているAPIを取得することになります。本記事では、初心者に向けてShopify APIの種類や基本的な使い方・取得方法について、簡単に解説していきます。
DMMチャットブーストではShopifyに関する記事もございますので、ぜひご覧ください。
Shopify が提供する API 一覧
Shopifyは多様なAPIを提供しています。これらのAPIは、アプリ開発者が必要なサービスに合わせて利用できます。
提供されているAPIの主な種類は以下の通りです。
- アクセスAPI:店舗へのアクセスや認証に関するAPI
- 分析API:データ解析や統計情報取得に関するAPI
- 請求API:支払いや請求に関するAPI
- 顧客管理API:顧客情報の取得や管理に関するAPI
- 割引API:割引設定や計算に関するAPI
- イベントAPI:イベントに関連する情報や通知に関するAPI
- 在庫管理API:在庫情報の取得や管理に関するAPI
- オンラインストアAPI:オンラインストアの設定や操作に関するAPI
- 注文API:注文情報の取得や処理に関するAPI
- 拡張API:特定の機能を拡張するためのAPI
- 製品管理API:製品情報の取得や管理に関するAPI
- 販売チャネルAPI:販売チャネルの設定や管理に関するAPI
- 配送およびフルフィルメントAPI:配送や受注処理に関するAPI
- Shopify PaymentsAPI:Shopify Paymentsに関連するAPI
- ストアプロパティAPI:ストアの設定やプロパティに関するAPI
これらのAPIを活用することで、開発者はより便利なアプリを提供することが可能です。
Shopify APIを使ってできること
アクセス API(Access APIs)
アクセス API(Access APIs)は、販売者から与えられたアクセスを表示・管理するためのAPIです。
StorefrontAccessToken
Storefront APIへのアクセスに必要なストアアクセストークンを生成します。
AccessScope
アプリのインストール中に販売者が承認したアクセススコープを表示します。
Shopify管理者のレポートを作成、更新、削除を行います。各レポートは、Shopifyクエリ言語(ShopifyQL)で記述されたクエリから作成されます。
分析 API(Analytics APIs)
分析 API(Analytics APIs)は、販売者に詳細なレポートを提供し、ビジネスのパフォーマンスを分析するためのAPIです。
AccessScope
Shopify管理者のレポートを作成、更新、削除を行います。各レポートは、Shopifyクエリ言語(ShopifyQL)で記述されたクエリから作成されます。
利用可能なShopifyスキーマからデータをフェッチするクエリを記述します。ShopifyQLクエリは、レポートAPIを使用してレポートを公開するために使用できます。
請求 API(Billing APIs)
請求 API(Billing APIs)は、一回限りの料金、サブスクリプション手数料、従量制の手数料を収集して、アプリの支払いを受け取るためのAPIです。
ApplicationCharge
アプリケーション料金を作成して、ショップに一度限りの料金を請求します。
RecurringApplicationCharge
ショップにアプリのサブスクリプション料金を請求します。請求は30日ごとに行われます。
UsageCharge
毎月のアプリの利用状況に応じて、様々な金額を請求することができます。
ApplicationCredit
特定のショップのアプリケーションクレジットの作成をリクエストします。
顧客管理 API(Customer APIs)
顧客管理 API(Customer APIs)は、マーチャントが顧客データを管理するのに役立つAPIです。
CustomerSavedSearch
顧客の保存された検索を追加や更新することができます。保存された検索は、顧客をグループに整理し、管理画面から素早くアクセスできるようにするのに役立ちます。また、特定の割引コードを使用できる顧客など、顧客のセットを指定するのにも便利です。
Customer
顧客の住所やストアでアクティブな顧客アカウントを持っているかどうかなど、ストアの顧客に関する情報を追加または更新できます。
CustomerAddress
ストアの顧客アドレスを管理します。顧客は複数のアドレスを持つことができ、そのうちの1つは税金や送料の計算に使用されるデフォルトのアドレスです。
割引 API(Discount APIs)
割引 API(Discount APIs)は、マーチャントが柔軟な割引を提供するのに役立つAPIです。
DiscountCode
PriceRule APIを使用して割引のロジックを設定した後、DiscountCode APIを使用して割引をコードに関連付け、チェックアウト時に入力して割引を適用することができます。
PriceRule
割引のロジックを作成し、DiscountCode APIを使用してコードを割引に関連付け、チェックアウト時に適用できるようにします。
イベント API(Event APIs)
イベント API(Event APIs)は、イベントデータを取得するか、Webhookを登録して、アプリをマーチャントストアと同期させるためのAPIです。
Event
ショップの運営において重要なアクションであるイベントのリストを取得します。Shopifyは様々なリソースのイベントを記録し、各リソースにはイベントを作成するアクションのセットがあります。
Webhook
Webhookを使用してイベントデータを取得および保存します。
在庫管理 API(Inventory APIs)
在庫管理 API(Inventory APIs)は、複数の場所の在庫を管理するためのAPIです。
InventoryLevel
ある場所での在庫商品の在庫レベルを取得または更新します。各在庫レベルは、単一の在庫商品遠場所に関連づけられてます。
InventoryItem
バリアントの在庫商品の在庫を一覧表示したり、更新したりします。各バリアントは1つの在庫商品を持つことができ、各在庫商品は多くの場所を持つことができます。店舗の場所は、売上を追跡したり、チェックアウト時に適用される税率を設定したりするために使用されます。
Location
マーチャントが設定した場所をShopify管理者から取得します。各場所は、企業の本社、小売店およびポップアップストアの住所を指します。ストアの場所は、売り上げを追跡し、チェックアウト時に適用される税率を構成するために使用されます。
オンラインストア API(Online store APIs)
オンラインストア API(Online store APIs)は、マーチャントのオンラインフロントとそのコンテンツを更新するためのAPIです。
Page
オンラインストアの静的ページを作成および更新します。
Blog
ストアのブログを作成、編集、および削除します。各ストアには、複数のブログを含めることができ、各ブログには多くの記事を含めることができます。Article APIを使用して、各ブログ記事を管理します。
ScriptTag
リモートJavaScriptをオンラインストアのストアフロントページと注文ステータスページにロードして、ストアのテーマファイルを変更せずに機能を追加します。
Redirect
マーチャントのオンラインストアの301リダイレクトを管理します。
Article
ストアの記事を管理します。各記事はブログに属しており、多くのコメントをつけることができます。
Theme
オンラインストアの見た目と雰囲気をコントロールするストアのテーマを管理します。Asset APIを使用して、テーマ内の特定ファイルを更新することができます。
Asset
ストアのテーマを構成するファイルを管理して、オンラインストアの外観を変更します。
Comment
記事に対する読者のコメントを管理します。各記事には多くのコメントをつけることができます。利用可能なアクションには、コメントの作成、コメントの更新、コメントの削除、コメントのスパムとしてのマーク付け、コメントの承認などがあります。
Sections
セクションテーマのアーキテクチャためのREST APIです。
注文 API(Order APIs)
注文 API(Order APIs)は、マーチャントに新しい方法で注文を受け取り、処理し、管理するためのAPIです。
DraftOrder
マーチャントが顧客に代わって手動で注文を作成できるようにします。注文は、完了されるまで、Shopifyの管理者に下書きとして保存されます。
Refund
注文の払い戻しを作成して取得します。各払い戻しは、顧客に返金されたお金の記録です。計算エンドポイントを使用して、作成した払い戻しが正確であることを確認します。
Transaction
注文のトランザクションを作成および更新します。取引は、両替につながる注文ごとに作成されます。
Order
ストアの注文を作成および更新します。各注文は、顧客、カート、およびトランザクションの詳細を含む完全な購入者の記録です。
OrderRisk
注文の詳細ページに不正分析と推奨事項を表示します。
AbandonedCheckouts
不完全なチェックアウトのリストを取得します。各Checkoutオブジェクトには、顧客が購入を完了することができるオンラインチェックアウトへのURLが含まれています。
プラス API(Plus APIs)
プラス API(Plus APIs)は、Shopify Plus専用のAPIを使用して、GMVの高いマーチャント向けのカスタム機能を作成するためのAPIです。
GiftCard
ギフトカードコードを作成および管理します。このコードは、チェックアウト時に入力してギフトカードを使用して支払うことができます。
Multipass
複数のアプリケーションに渡る顧客の認証を管理して、それらのウェブサイトに単一のログインエクスペリエンスを提供します。
User
スタッフアカウントの権限を取得します。Shopify管理者から、マーチャントは各スタッフアカウントに、Shopifyの一部へのアクセスを制御する完全なアクセス許可または個別のアクセス許可を与えることができます。
製品管理 API(Product APIs)
製品管理 API(Product APIs)は、製品およびコレクション APIを使用して、ストアのカタログにアクセスして操作するためのAPIです。
ProductVariant
製品のバリエーションを追加または更新します。バリアントは、製品オプションの様々な組み合わせです。たとえば、サイズと色のオプションがあるTシャツ製品には、小さいサイズと青い色のバリエーションがある場合があります。
ProductImage
販売チャネルがユーザーに商品を表示するために使用する店舗の商品画像を追加または更新します。
Collect
カスタムコレクションを作成したら、商品ごとのコレクションを作成して、商品を追加します。各コレクションは、1つの製品を1つのカスタムコレクションに関連づけます。
SmartCollection
選択条件を定義して、スマートコレクションを作成または更新します。条件に一致する商品は自動的にコレクションに含まれます。
Collection
ストアのコレクションを管理します。コレクションは、マーチャントが店舗を閲覧しやすくするために作成できる商品のグループです。
CustomCollection
ストアのカスタムコレクションを管理します。カスタムコレクションは、製品が選択条件を満たすために自動的に含まれるものではなく、手動で含まれるコレクションです。
Product
ストアで販売される製品およびサービスであるストアの製品を管理します。
販売チャネル API(Sales channel APIs)
販売チャネル API(Sales channel APIs)は、独自の販売チャネルを作成するためのAPIです。販売チャネルは、モバイルアプリ、ウェブサイト、オンラインマーケットプレイスなどです。
Checkout
チェックアウトを作成しておよび更新して、販売チャネルにカスタムチェックアウトエクスペリエンスを提供します。
Payment
支払いを作成および更新して、販売チャネルにカスタムチェックアウトエクスペリエンスを提供します。
CollectionListing
販売チャネルに公開されているコレクションを管理し、それらの情報を取得します。
ProductListing
販売チャネルで利用可能な製品を管理し、それらの情報を取得します。
ResourceFeedback
アプリのエラーを解決するために必要なアクションについて販売者に通知します。
ProductResourceFeedback
商品のリソースのフィードバックにより、アプリケーションに関連するショップの個々の商品の状態を伝えることができます。
配送およびフルフィルメント API(Shipping and fulfillment APIs)
配送およびフルフィルメント API(Shipping and fulfillment APIs)は、マーチャントのフルフィルメントプロセスを管理するためのAPIです。
FulfillmentEvent
注文のフルフィルメントのためのフルフィルメントイベントを作成します。フルフィルメントイベントは注文ステータスページに表示されるため、顧客は配達の進行状況を追跡できます。
FulfillmentOrder
同じ場所から実行される順序でアイテムまたはアイテムのグループを管理します。フルフィルメントオーダーを取得してキャンセルするか、フルフィルメントオーダーを未完了としてマークするか、フルフィルメントオーダーを新しい場所に移動します。
CancellationRequest
フルフィルメントサービスに割り当てられたフルフィルメント注文のキャンセルリクエストフローを管理します。
Fulfillment
注文のラインアイテムのフルフィルメントを管理します。出荷ごとにフルフィルメントを作成し、追跡情報を提供して商品が出荷されたことを顧客に通知します。
FulfillmentRequest
フルフィルメントサービスに割り当てられたフルフィルメント注文のフルフィルメントリクエストフローを管理します。
CarrierService
カスタム配送サービスでチェックアウトする前に、リアルタイムの配送計算を提供します。
FulfillmentService
フルフィルメントサービスをストアに登録します。その後、マーチャントはそれを自社製品のフルフィルメントサービスとして設定でき、サービスはFulfillmentおよびFulfillmentEventAPIを使用してそれらの製品のフルフィルメントを管理できます。
AssignedFulfillmentOrder
アプリに割り当てられているショップのフルフィルメント注文を表示します。
LocationsForMove
フルフィルメントオーダーが移動する可能性のある場所を表示します。
Shopify Payments API(Shopify Payments APIs)
Shopify Payments API(Shopify Payments APIs)は、Transactions、Dispute、Payouts、およびBalanceなど、Shopify Paymentsアカウントに関連する情報を取得するためのAPIです。
ストアプロパティ API(Store property APIs)は、ShopおよびCountryなど、ストアの一般設定と情報にアクセスするためのAPIです。
Shop
ストアの一般情報と設定を管理します。ストアの名前、住所、通貨、ロケールなどの詳細な情報にアクセスできます。
Country
ストアの販売国と配送国のリストを取得します。ストアが出荷および販売を許可する国の一覧を管理します。
ShopifyPaymentsAccount
ストアのShopify Paymentsアカウントに関連する情報を取得します。アカウントのステータス、設定、取引、および残高などにアクセスできます。
その他のAPI(Other APIs)
その他のAPI(Other APIs)は、ショッピング体験を向上させるための補助的なAPIです。
CustomerSavedSearch
カスタマーセグメントを作成、更新、および削除します。セグメントは、指定された条件を満たす顧客のサブセットを表します。
UserSkill
スタッフアカウントのスキルを管理します。スタッフメンバーの特定のスキルを追加、更新、および削除できます。
Metafield
商品、カスタムコレクション、コレクション、注文などのShopifyリソースにカスタムデータを追加できます。
MarketingActivity
マーケティングイベントを作成、更新、および削除します。マーケティングイベントは、特定の日付範囲に関連する特定の店舗の活動を表します。
Flow
オンボーディングフローを作成、更新、および削除します。店舗のオンボーディングプロセスの一部として、店舗にカスタム情報を提供します。
Discount
割引コードを作成、更新、および削除します。これらのコードを顧客に提供して、購入時に割引を提供できます。
ProductRecommendation
顧客に表示される商品の推奨事項を作成、更新、および削除します。
CountryCode
ISO 3166-1 alpha-2コードを使用して、国ごとに顧客の税金設定を構成します。
これらのAPIは、マーチャントがShopifyストアをカスタマイズし、管理するための強力なツールを提供しています。さまざまな用途に応じてこれらのAPIを組み合わせることで、ショッピング体験の向上、注文と在庫の管理、顧客サポートの向上など、多様な目標を達成できます。
ShopifyAPIの使い方3選と概要
Shopify APIには、必要な機能に合わせたさまざまな使われ方があります。
実際にどのような場面でShopify APIが使われているのか、具体的に紹介します。
テーマのカスタマイズ・構築
Shopifyには有料・無料含めてたくさんのデザインテーマが用意されています。テーマを利用することで簡単にデザインの変更が可能ですが、HTMLやCSSなどのWebデザインに必要な言語とShopify APIがあれば、既存のテーマをカスタマイズして使用したり、世界で一つだけの独自のデザインを構築することも可能になります。
Shopifyの機能の拡張
Shopifyには基本機能の他に、拡張機能として7000種類近くのアプリが公開されています。Shopify公式で作成されたものから、ユーザーが開発しているものまでさまざまなアプリをダウンロードして、自分のストアに組み込むことができます。
Shopifyの基本機能には無い在庫管理や商品登録、SNSとの連携などもアプリから機能拡張が可能です。
このアプリの開発には、Shopify APIが使用されています。
また、アプリを使用せずに独自で機能を拡張したい場合も、Shopify APIを用いて開発することができます。
実店舗とShopifyのデータ連携
引用:shopify.jp
実店舗とShopifyストアのデータを連携したい場合にも、Shopify APIを利用します。
実店舗とShopifyのストアの在庫や販売情報、顧客情報を一元管理できる機能として、Shopify公式には「Shopify POS」が用意されています。Shopify POSのアプリを使って実店舗の情報も管理することで、オンラインと実店舗の情報を簡単に集計し、データの分析も行うことができます。
業務の効率化を行えるだけではなく、顧客に対してオンラインと実店舗の垣根を無くしたサービスを提供することも可能です。
このShopify POSの機能も、Shopify APIを用いて実現されています。
また、Shopify POSを利用せずとも、APIを用いることでShopify以外のオンラインストアとShopifyストアの情報を連携させることも可能です。
DMMチャットブーストではshopifyの構築に関する記事もございますので、ぜひご覧ください。
ShopifyAPIの4タイプ
Shopify APIには利用する目的によって、さまざまな種類が提供されています。
その中でもよく利用される4種類について、利用シーンと合わせて説明していきます。
Admin API
「Admin API」は、Shopify上のデータにアクセスするために利用するAPIです。
ストアの商品や在庫、注文などの販売情報や顧客情報を呼び出したり、書き込むことができます。
通常であればShopify上の管理画面を用いて行うことを、独自開発したアプリから利用できるイメージです。
Admin APIを用いることで、Shopifyストアの情報と実店舗や他のオンラインストアの情報を連携させたり、
POSとの連動、顧客情報の管理など、さまざまな情報の読み書きを行うことができます。そのため、Shopify APIの中でももっとも利用頻度の高いAPIと言うことができます。
Storefront API
「Storefront API」は、Shopifyストアの販売や注文に関する機能を外部で利用することが出来るAPIです。
Storefront APIを用いることで、Shopifyストアの機能を使いながら、
スマートフォンのアプリやストアではないWEBサイト上で商品を販売することができます。
そのため、独自で開発したソフトウェアやアプリにShopifyストアの商品を販売するなど、
ストアではない場所で販路の拡大が可能になります。
Partner API
Shopifyには、Shopifyのサポートを行う「Shopifyパートナー」という制度があります。
Shopifyパートナーに登録することで、ストアのオーナーの代わりにストアを構築して報酬を得たり、
アプリやテーマを開発して販売することが可能になります。
「Partner API」は、Shopifyパートナーがクライアントに関する情報を管理する際に利用するAPIです。
Partner APIを利用することで、パートナー制度で得られる報酬や、開発したアプリの利用者数などの情報を簡単に読み込むことができます。
LiquidとAjax API
Shopifyでテーマを開発するためには、HTMLやCSSといったWebのデザイン言語の他にShopify専用のテンプレート言語「Liquid」と、テーマ開発用の「Ajax API」が必要になります。
LiquidはHTMLやCSSに独自の構文が混ざったような言語になっているため、Webデザインを行う人にとっては馴染みやすくなっています。Ajax APIはカートや商品などをデザイン内で制御する際に使用します。
ただし、販売や注文など細かな機能を盛り込みたい場合はAjax APIでは行うことができないので、
他のAPIを合わせて利用することになります。
ShopifyのAPI連携による4つのメリット
①機能性の向上
サードパーティーのアプリケーションやツールを統合することで、オンラインストアに機能を追加し、顧客の体験を向上させ、売上を増加させることができます。②効率の向上
Shopify API連携でタスクを自動化することで、時間を節約し、生産性を向上させることができます。③オペレーションの合理化
ShopifyのAPI連携を統合することで、オペレーションを合理化し、ビジネスの成長に集中することができます。④カスタマイズ性
Shopify API連携により、独自のビジネスニーズを満たすカスタムアプリケーションやプラグインを作成することができます。ShopifyのAdminAPIの利用プロセス
さきほど紹介した4つのAPIの中でももっとも利用頻度の高いAdmin APIについて、
どのように利用するのか手順を紹介していきます。
プライベートアプリの作成とAPIキーの発行
Shopifyストアの管理画面のメニューから「アプリ管理」、画面下部にある「プライベートアプリを管理する」の順にクリックします。
引用:Shopify管理画面
プライベートアプリを作成したことがある場合は一覧が表示されます。
無い場合は以下のような画面になります。
表示に合わせて「新しいプライベートアプリを作成する」または「プライベートアプリを作成する」をクリックします。
引用:Shopify管理画面
アプリの名前や開発者のメールアドレス、Admin APIに付与する権限などを選び、「保存する」をクリックします。
引用:Shopify管理画面
表示されたプライベートアプリ作成に関するダイアログを確認し、「アプリを作成する」をクリックします。
引用:Shopify管理画面
「プライベートアプリが正常に作成されました」と画面上部に表示されれば完了です。
引用:Shopify管理画面
APIにアクセス
作成したプライベートアプリ用のAdmin APIは、以下のURLからHTTP認証を用いてブラウザで直接アクセスが可能になります。
https://{APIキー}:{パスワード}@{サブドメイン}/admin/api/{version}/{resource}.json
アクセスに必要なURLやAPIキー、パスワードは、作成したプライベートアプリの「Admin API」欄に表示されています。
引用:Shopify管理画面
これらはストアの販売情報などにアクセスできる重要な情報です。取り扱いには充分注意しましょう。
ShopifyAPIの使い方と仕組みを理解しよう!
Shopify APIを利用することで、Shopifyの機能を最大限引き出すことが可能になります。
実現させたい機能にはどんなAPIが必要になるのか、理想のストアを構築するためにも、Shopify APIについて理解を深めていきましょう。
Shopifyで顧客管理を充実させたいのであれば、DMMチャットブーストの利用が簡単でおすすめです。
LINE公式アカウントの友だち情報とShopifyの顧客情報を連携させることができるため、手軽にマーケティングを行うことができます。
ぜひ一度資料をダウンロードして、機能性の高さをご確認ください。
DMMチャットブーストではShopify APIに関する記事もございますので、ぜひご覧ください。