転職したらスマレジだった件

マジレス大歓迎です。

だれでもスマレジ・アプリマーケットのアプリ開発者になれる - ④スマレジ・プラットフォームAPIの使い方(アプリアクセストークン取得|Postman)

こんにちは!

スマレジ・テックファームのWebエンジニアやまてと申します。

人と比べる → 凹む、という無駄な時間を過ごしている暇はないので、セルフコントロールに気をつけていきたいところです。Webエンジニア1年目の35歳には残された人生の時間が短いので…笑


さて、早速ですが本題に入ります。前回の記事で、アプリ開発者アカウントを作成しました。

以下、連載の目次です。

INDEX - 『だれでもスマレジ・アプリマーケットのアプリ開発者になれる』連載

本連載は以下の順序で投稿しています。

① スマレジ・デベロッパーズとは

「スマレジ・デベロッパーズ」をはじめ、「スマレジ・アプリマーケット」と「スマレジ・プラットフォームAPI」、「スマレジ・デベロッパーズ・コミュニティ」について、どのようなものか簡単に確認します。

② スマレジ・デベロッパーズのアカウント登録(無料!)

スマレジ・アプリマーケットのアプリ開発者になるために、スマレジ・デベロッパーズのアカウントを登録して、開発環境を準備します。

③ アプリの新規登録

スマレジ・デベロッパーズでのアプリの新規登録の方法を確認します。

④ スマレジ・プラットフォームAPIの使い方(アプリアクセストークン取得|Postman)(今回)

スマレジ・プラットフォームAPIを実際に使ってみます。APIをテストできるアプリである Postman のアカウント登録・使用し、 スマレジ・プラットフォームAPI の アプリアクセストークン取得 をします。

⑤ スマレジ・プラットフォームAPIの使い方(商品一覧取得|Postman)

Postman で実際に スマレジ・プラットフォームAPI の一つである 商品一覧取得 のAPI を使用します。

④スマレジ・プラットフォームAPIの使い方(アプリアクセストークン取得|Postman)

今回は、 スマレジ・プラットフォームAPI を実際に使ってみます。

まずは、APIをテストできるアプリである Postmanアカウント登録 をします。

Postman のアカウント登録が完了したら、 Postman を使用して、スマレジ・プラットフォームAPI を使ってみます。


連載1回目で触れましたが、スマレジ・プラットフォームAPI は、外部のWebアプリから、スマレジ各プロダクトのデータにアクセスすることができるものでしたね。

ryamate.hatenablog.com

https://cdn-ak.f.st-hatena.com/images/fotolife/r/ryamate/20220429/20220429073846.png

今回、APIアプリアクセストークン取得 をして、

次回、そのアクセストークンを使って、API商品一覧取得 します。


1. Postman のアカウント登録

Postman はAPIのHTTPリクエスト、レスポンスをテストできるアプリです。

Postmanは、APIを構築および使用するためのAPIプラットフォームです。Postmanは、APIライフサイクルの各ステップを簡素化し、コラボレーションを合理化するため、より優れたAPIをより迅速に作成できます。

www.postman.com


Postman を利用するために、アカウント登録します。

Postman にアカウント登録済みの方は、「2. Postman でのAPIテスト」に進んでください。


Visual Studio Code拡張機能である Thunder Client は Postman とほぼ同様の使用感で利用できると思いますので、Thunder Client でも問題ないかと思います。


1.1. Postman アプリのダウンロード

下記ページより、 Postman アプリ(zipファイル)をダウンロードします。(Mac Intel Chip、Mac Apple ChipやWindowsを選択します。Macの画面で以下進めます。)

www.postman.com

ダウンロードしたzipファイルを解凍すると、「Postman.app」という名前のアプリケーションファイルが展開されるので、アプリケーションフォルダに移動し、アプリを開きます。

1.2. Postman のアカウント登録

Postman のアカウントを作成します。

ここでは詳細を省略しますが、その後も画面の指示に従い、進めていきます。

1.3. ログイン後の画面準備

ログイン後の Postman アプリ画面です。

Workspaces タブから My Workspace を押し、

スタンバイOKです。


2. Postman でのAPIテスト(設定)

※ スマレジ公式のチュートリアルの対応箇所はこちらです。

note.com

Postmanを利用し、アプリアクセストークンを取得します。

アプリからユーザーのデータにAPIアクセスするには、アプリアクセストークンを取得する必要があります。


2.1. Collection・request(HTTPリクエスト)の作成

Collectionの作成

「Collection」と「request」は、「フォルダ」と「ファイル」の関係性のような感じです。

Postman の左サイドバーの「Collections」 → 画面左上「+」(Create new Collection)を押します。

Collection が作成されました。 Collection の名前はなんでも大丈夫です。(ここでは「スマレジ・プラットフォームAPI」と付けています。)


request(HTTPリクエスト)の作成

「Add a request」を押します。

request は「アプリアクセストークン取得」と名付けています。


2.2. request(HTTPリクエスト)の設定

アプリアクセストークン発行用エンドポイントの設定

アプリアクセストークン発行用のエンドポイント に、 リクエストパラメータ と一緒に POST する設定をします。

エンドポイント共通仕様書 に記載があります。

POST https://id.smaregi.dev/app/{契約ID}/token

{{}}で囲って環境変数を使用できるため、以下のように記述しておきます。(環境変数は後ほど設定します。)

https://id.smaregi.dev/app/{{CONTRACT_ID}}/token


リクエストヘッダー・リクエストボディの入力

「Authorization」タブを開いて、下記のとおり選択&入力します。 契約ID同様に環境変数を設定しておきます。

Type Basic Auth
Username {{CLIENT_ID}}
Password {{CLIENT_SECRET}}


「Body」タブについて、「x-www-form-urlencoded」(Content-Type)を選択します。(選択することで、ヘッダーに「Content-Type: x-www-form-urlencoded」が追加されます)

grant_type client_credentials
scope (空)

※ スコープは、使用するAPIによって指定します。今回は空で送信します。

入力したら、画面右上のほうの「Save」を押しておきましょう。


2.3. 環境変数の設定

契約ID・クライアントID・クライアントシークレットの確認

環境変数として設定する下記について、スマレジ・デベロッパーズ管理画面で確認します。

CONTRACT_ID 契約ID
CLIENT_ID クライアントID
CLIENT_SECRET クライアントシークレット

スマレジ・デベロッパーズトップ画面左上で、「契約ID」を確認します。


アプリを新規登録したときに発行されている「クライアントID」と「クライアントシークレット」を確認できるページは、


サイドバー「トップ」→「アプリ」→「パブリックアプリ」

→「概要を見る」→「環境設定タブ(/ 開発タブ)」


です。


環境変数の設定

Postman画面左サイドバーの「Environments」を押します。

名前はなんでも大丈夫ですが、「開発_スマレジ・プラットフォームAPI」と付けています。


確認した内容の通り、変数名と値(契約IDなど)を入力します。

VARIABLE INITIAL VALUE
CONTRACT_ID sb_●●●●●●●●(先ほど確認した「契約ID」)
CLIENT_ID 「クライアントID」
CLIENT_SECRET 「クライアントシークレット」

※ 「TYPE」については、default、secretなど、適宜設定します。


環境変数の有効化

「スマレジ・プラットフォームAPI_サンドボックス」を「active」に設定します。


環境変数の保存

「スマレジ・プラットフォームAPI_サンドボックス」を「Save」します。


3. Postman でのAPIテスト(リクエスト送信)

「Send」を押すと、アプリアクセストークンを取得できます。

"access_token"とあるのがアプリアクセストークンです。隠していますが、長〜い英数字の羅列です。


今回の記事は以上です!


次回、「だれでもスマレジ・アプリマーケットのアプリ開発者になれる - ⑤スマレジ・プラットフォームAPIの使い方(Postmanで商品一覧取得)」投稿予定です。