このエントリはMagento Advent Calendar 2019の3日目です。

公式のDevdocsには割と詳しく書かれているのですが、MagentoでREST APIを使う方法を解説したいと思います。
まず最初は準備編ということで、APIを使い始める前段階の予備知識編です。

REST APIの基本

MagentoのREST APIは固有のURL(エンドポイント)を持っています(REST APIとはそういうものですが)。
どのエンドポイントがどのAPIなのかを知りたい場合、エンドポイントの一覧をみることで標準のものについては把握できます。
ただ、この一覧では各APIがどういう役割で、どういうパラメータを要求するのかがわかりません。
各APIのリファレンスについては、Devdocsに入り口ページがあるので、そこから調べると良いでしょう。

Magentoに用意されているAPIエンドポイントは非常に多く、またAPIごとにパラメータが異なるので、こうした資料をよく読んだ上で利用していくことになります。

APIと認証

Magentoに用意されているREST APIは、原則としてリクエスト毎に認証が必要です。
一部認証しなくても良いAPIもありますが、基本はAPIにアクセスするたびに認証が必要です。

用意されている認証の方法

REST APIに用意されている認証の方法は以下の3つです。

  • トークン認証
  • OAuth認証
  • セッション認証

外部システムからREST APIを使う場合は、これらのうち「トークン認証」または「OAuth認証」を使用することになります。(セッション認証はログイン中の会員や管理者が利用するものなので、ここでは割愛します)

REST APIの利用を始める前に

REST APIの利用を始める前に、どの認証方式を使うかによって、準備の手順が変わります。

セッション認証またはOAuth認証を使う場合

セッション認証またはOAuth認証を使う場合、以下の手順でAPI専用のユーザーを作成します。

  1. 「システム>権限」でAPIユーザーに許可したい権限を付与する。
  2. 「システム>すべてのユーザー」でAPI用のユーザーを作成し、さきほど作成した権限を割り当てる。

権限を何も割り当てないと、何もできないユーザーができてしまいます。操作時は注意しましょう。
あとは連携するプログラムから適切な認証手順を踏んで、APIを利用していきます。

トークン認証を使う場合

トークン認証を使う場合は、以下の手順でトークンを発行します。

  1. 「システム>インテグレーション」にアクセスする。
  2. 「新しいインテグレーションを追加」から新しいインテグレーションの作成画面に入る。
  3. インテグレーションの名前と、APIに許可する権限をセットして保存する。
  4. インテグレーションを有効化する。
  5. 画面に表示されたトークンなどの情報をメモする。

これでAPIを使うための準備はできました。

次回は実際にREST APIを使ってMagentoを操作していきます。