Postmanを使ってスマレジ・プラットフォームAPI(β版)を実行してみる
こんにちは!株式会社スマレジ、開発部のmasaです。 緊急事態宣言が解除されて、少しずつ元の生活に戻りつつありますが、 皆様の周りはいかがでしょうか?
スマレジでも、店舗再開のお問い合わせなどもいただいており、 少しずつではありますが、日常が戻ってきていることを感じています。
さて、今回からRedmine APIは少しお休みして、スマレジ・プラットフォームAPI(β版)の 紹介をしていきます。
Redmine APIについては、ブログとは別に記事を書いて、まとめて紹介予定なのでしばしお待ちください。 (記事やアプリ自体はストックがあるんですが、量が多くて、スマレジ関連のほかの話題を取り上げづらくなりまして(-_-;))
Smaregi Platform API !!
スマレジでは現在、サードパーティ向けのWebAPIと連携アプリの配信環境を整備しています。
将来的には作成したアプリは現在開発中のスマレジ・developers
を通じて、スマレジユーザに向けて配信することができます。
そして、なんと配信したアプリには月額を設定することができ、収益を上げることもできちゃうようになるんです!
(現在はβ版のAPI利用のみ可能)
今回は、そんな夢が広がるスマレジ・プラットフォームAPI(β版)の連携方法をご案内します! ※ 本投稿は2020/05/31時点のものです。最新の画面とは一部レイアウト・項目・認証方法法などが異なる場合があります。
0. 必要なもの
この記事で必要になるものは下記のとおりです。
- メールアドレス
- Postman
また、このシリーズでもGASやclaspを利用する予定なので、 流用予定の方はgoogleのアカウントをご用意いただくとよいと思います。
1. スマレジ・developersにユーザ登録する
上記がサードパーティの募集ページになります。 まずは概要を読んでいただき、「アプリ開発に参加する」→「無料でアカウント作成」から 開発者用アカウントを発行し、スマレジ・developersにログインします。
2. アプリを登録する
登録&ログイン後に上記のようなページ(あなたのアプリはまだ空だと思います)がでるので、赤枠の「アプリ」→「アプリを新規登録」から アプリを新規登録をします。
登録したらクライアントIDとクライアントシークレットを控えておきます。 どちらも「アプリ」の「認証」(↓)から確認できます。
3.Postmanの設定をする
アクセストークンを取得するためのエンドポイントの情報を設定します。
- HTTP_METHOD : POST
- URL :
https://id.smaregi.dev/authorize/token
先ほど取得したIDとシークレットをPostmanに設定します。
下図のようにAuthorization
でBasic Auth
を選び、Username
にクライアントID, Password
にクライアントシークレットを設定します。
Postmanをよく使用される場合は、IDとシークレットは変数として登録しておくといいと思います。
4. 認証用コードを取得する
https://id.smaregi.dev/authorize?response_type=code&client_id={クライアントID}
にアクセスすると、上記のような認証画面が開きます。
そして、認証すると、↓のような認可コードが現れます。(がっつり見せてますが、すでに再発行済みで下記のコードは無効なのでお気になさらず)
これをコピーして、下図のように、Body
のx-www-dorm-urlencoded
にcode
をkeyにして入力し、同じようにgrant_type
をauthorization_code
に設定しておきます。
そして、sendすると、下記のようにaccess_token
とrefresh_token
が取得できます。
5. 店舗取得APIを実行してみる
developerアカウントは無料でスマレジのほとんどの機能を利用することができます。(ただし検証用環境のため、登録上限などは小さく設定してあります) しかし作成して直ぐのdevelopersアカウントには、取引情報などはありません。 ただ、通常のスマレジ契約と同じで店舗は1つ生成されているのでそれを取得してみます。
画像のように、HTTP_METHODをGET
、URLをhttps://api.smaregi.dev/{契約ID}/pos/stores/1
にセットし、Authorization
をBearer Token
、Tokenにさっき取得したaccess_token
をセットします。
この状態でSendすれば、店舗情報が取得できます。
他のAPIについては仕様書へアクセスしてみてください。(「ドキュメント」→「仕様書」URLは↓) www1.smaregi.dev
駆け足でしたが、postmanを使ったプラットフォームAPIの実行を解説しました。 この内容はdevelopersのスタートガイドにも記載があります。(Postmanの設定を除く) 他の環境で実施される場合はそちらをご参考ください。