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

スマレジのエンジニアやまてのテックブログです。マジレス大歓迎です。

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

こんにちは!

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


  ボーナスで デスク環境 整えたい


それでは本題に入ります。以下、連載の目次です。

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

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

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

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

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

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

③ アプリの新規登録

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

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

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

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

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


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

今回は、 Postman で前回取得した アプリアクセストークン を使って、スマレジ・プラットフォームAPI の一つである 商品一覧取得API を使用します。


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

note.com

チュートリアルでは、 店舗一覧取得API と 店舗更新API を使用していますが、せっかくですので別のAPIを使用しています。


1. サンプルデータの登録

スマレジ・デベロッパーズのサンドボックス環境は、商品などのデータは空っぽであるため、今回はサンプルデータのCSVファイルをダウンロードします。

1.1. サンプルデータのダウンロード

スマレジ・デベロッパーズ管理画面のサイドバー「ドキュメント」→「ヘルプと参考資料」タブを開いて、 部門データサンプル商品データサンプル をダウンロードしてください。


1.2. 部門データサンプルのCSVアップロード

続いて、

サイドバー「商品」→「部門」→「部門(カテゴリ)」→「CSVで登録」を押し、

先ほどダウンロードした 部門データサンプル(sample_category.csv)をアップロードします。

「商品」→「部門(カテゴリ)」→「部門一覧」を開くと、サンプルデータが確認できます。


1.3. 商品データサンプルのCSVアップロード

同じ要領で、

サイドバー「商品」→「商品登録」→「CSVで登録」を押し、

先ほどダウンロードした 商品データサンプル(sample_product.csv)をアップロードします。

「商品」→「商品一覧」を開くと、サンプルデータが確認できます。


2. スコープの設定

スコープとは、範囲のことで、有効にしたスコープの対象のAPIのみ使うことができます。

2.1. 仕様書でのスコープの確認

スマレジ・プラットフォームAPI POS仕様書 (ver.1.0.0) で、スコープは確認できます。

AUTHORIZATIONS: AppAccessToken (pos.products:read)

と記載がありますが、 pos.products:read がスコープです。


2.2. 管理画面でのスコープの設定

スマレジ・デベロッパーズの管理画面を開きます。

https://developers.smaregi.dev/

管理画面サイドバーから、「アプリ」→「パブリックアプリ」→「概要を見る」を押し、

「スコープ」タブ →「スマレジ」タブ の順に進みます。

商品一覧取得API に必要なスコープである pos.products:read を 有効 にし、「保存」を押します。

上記のページで 有効 にしていない スコープ は使えません。


2.3. Postmanでのスコープの入力

Postman を開きます。

アプリアクセストークン取得API のリクエストボディの「scope」に、有効にしたいスコープ pos.products:read を入力します。

※ スコープが複数ある場合は、「pos.stores:read pos.stores:write」のようにスコープの値を 半角スペース で区切って追記します。


3. アプリアクセストークンの取得(HTTPリクエスト送信)

「Send」を押すと、 商品一覧取得 についての スコープ が有効になっている アプリアクセストークン が取得できます。

"access_token"とあるのが アプリアクセストークン です。

レスポンスの”scope”に、有効にしたスコープ pos.products:read があることを確認します。


4. HTTPリクエストの設定

商品一覧取得API についての HTTPリクエス の設定をします。

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

「Add a request」を押し、

「商品一覧取得」と名前をつけます。


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

エンドポイントの設定

スマレジ(POS)の各種APIエンドポイント については POS仕様書に記載があります。

https://api.smaregi.dev/{契約ID}/pos


さらに各APIの記載箇所を見て、HTTPメソッドやパスを確認します。今回は 商品一覧取得 を確認します。

GET https://api.smaregi.dev/{契約ID}/pos/products

アプリアクセストークン取得APIの時と同様に、以下のように 契約ID は 環境変数 で記述しておきます。

https://api.smaregi.dev/{{CONTRACT_ID}}/pos/products


Authorization の入力

「Authorization」タブを開いて、下記のとおり選択&入力します。 Token には、取得した アプリアクセストーク を入力しますが、 契約ID 同様に 環境変数 を設定しておきます。

Type Bearer Token
Token {{APP_ACCESS_TOKEN}}


4.3. 環境変数の設定

Postman画面左サイドバーの「Environments」を押し、「開発_スマレジ・プラットフォームAPI」を開きます。


VARIABLE INITIAL VALUE
APP_ACCESS_TOKEN 「アプリアクセストークン」

「3. アプリアクセストークンの取得」で取得した"access_token"の値(長〜い英数字全て)をコピー&ペーストします。忘れずに「Save」を押します。


5. 商品一覧取得(HTTPリクエスト送信)

「Send」を押すと、商品一覧が取得できます。

JSON形式の商品データが取得されたかと思います!

※ 補足ですが、POS仕様書には、APIを使用する際に設定することのできる、「QUERY PARAMETERS」が記載されていますが、リクエストの「Params」タブに記述すると、設定することができます。


今回の記事で「だれでもスマレジ・アプリマーケットのアプリ開発者になれる」の連載記事は終わりにさせていただきます。

今後もスマレジ・デベロッパーズ関連のインプットをしていきたいと思っていますので、その際にはブログ記事として投稿していきます。


ありがとうございました!