CData Software Blog

クラウド連携のCData Software の技術ブログです。

クラウド在庫管理ソフト ZAICO のAPIの使い方

こんにちは。CData Software Japan リードエンジニアの杉本です。

今回はクラウド在庫管理ソフト ZAICO のAPIの使い方を紹介したいと思います。

クラウド在庫管理ソフト ZAICO とは?

クラウド在庫管理ソフト ZAICO とはシンプルで低コストなSaaSの在庫管理ソフトウェアです。

https://www.zaico.co.jp/

f:id:sugimomoto:20200403223613p:plain

その名の通り在庫管理に特化していて、かなり機能を絞っているのが印象的なサービスです。

www.youtube.com

以下のような画面で在庫の登録・編集ができ

f:id:sugimomoto:20200403223628p:plain

後は「仕入登録」「納品登録」「発送指示」など、在庫を起点とした各種アクションをシンプルに実施できます。

f:id:sugimomoto:20200403223637p:plain

無料トライアルだけでなく無料プランも提供されており、中小企業でも気軽に始めることができるソフトウェアではないでしょうか。

f:id:sugimomoto:20200403223650p:plain

ちなみに、全く関係ない話ですが、株式会社ZAICOさんは山形でこのクラウドサービスの開発・提供をしています! CDataも宮城県仙台市に日本本社があるので、なんだかとても親近感を覚えてしまいました。

www.zaico.co.jp

API Reference

そんなZAICOでは、以下のようなAPIが公開されており、在庫データと納品データの取得・作成・更新・削除を実施することができるようになっています。

https://www.zaico.co.jp/wp-content/uploads/2020/01/zaico-api-doc-2.html

f:id:sugimomoto:20200403223808p:plain

こちらもシンプルな扱いやすい REST APIとなっていて、とても好感触です。

ZAICO API の使い方

まず API 機能の有効化を行います。

ZAICOにログインし、「設定」→「利用機能設定」に移動します。

f:id:sugimomoto:20200403223824p:plain

設定一覧の中から「API機能」の利用を有効化し、「更新」をクリックすればOKです。

f:id:sugimomoto:20200403223829p:plain

続いて認証です。ZAICO APIAPIトークン方式で認証し、アクセスします。

「ユーザ管理」→「ユーザ情報」をクリックし

f:id:sugimomoto:20200403223835p:plain

以下に表示されているAPIトークンを利用します。

f:id:sugimomoto:20200403223840p:plain

Postman から ZAICO API にアクセス

それでは実際にPostman を使って APIにアクセスしてみましょう。まず 在庫一覧 を取得してみます。

在庫データは「inventories」リソースで取得できます。APIトークンは「Authorization」ヘッダーでBearer と一緒にリクエストします。

GET /api/v1/inventories?page=1 HTTP/1.1
Host: web.zaico.co.jp
Authorization: Bearer xPk8pGmX8q3UyLFsNm3sWnv7NgTFD4cZ

なお、デフォルトの取得件数は1000件、「page」URLパラメータを使ってページネーションを行うことができます。

f:id:sugimomoto:20200403223900p:plain

在庫データの作成や更新はJSON形式でデータをリクエストして行います。例えば、在庫データの作成は「POST」メソッドで以下のようにリクエストします。

POST /api/v1/inventories HTTP/1.1
Host: web.zaico.co.jp
Authorization: Bearer xPk8pGmX8q3UyLFsNm3sWnv7NgTFD4cZ
Content-Type: application/json

{
  "title": "ZAICO",
  "quantity": 10,
  "unit": "個",
  "category": "ODBC",
  "state": "新品",
  "place": "仙台倉庫",
  "etc": "備考",
  "code": "",
  "item_image": "",
  "stocktake_attributes": {
    "checked_at": "2018-03-27T09:38:19+09:00"
  },
  "inventory_history": {
    "memo": "変更履歴メモ"
  }
}

f:id:sugimomoto:20200403223908p:plain

データの更新は「PUT」メソッドで、IDをURIに指定しリクエストします。

PUT /api/v1/inventories/25911226 HTTP/1.1
Host: web.zaico.co.jp
Authorization: Bearer xPk8pGmX8q3UyLFsNm3sWnv7NgTFD4cZ
Content-Type: application/json

{
  "title": "Update"
}

f:id:sugimomoto:20200403223915p:plain

データの削除は「DELETE」メソッドを利用し、URIで対象の在庫IDを指定します。

DELETE /api/v1/inventories/25911226 HTTP/1.1
Host: web.zaico.co.jp
Authorization: Bearer xPk8pGmX8q3UyLFsNm3sWnv7NgTFD4cZ

f:id:sugimomoto:20200403223924p:plain

Postman のコレクションファイル

今回使用した Postman のコレクションファイルは以下のURLで公開しています。

ZAICO API Postman Collection · GitHub

おわりに

あと、このZAICO API を使って、CData Driverとも連携してみました!

www.cdatablog.jp