Kon's DX Lab - Case Study

Day 27 | スプレッドシートとロジレスAPIで、EC在庫推移管理をちょっとラクにしてみた実験記録

Published on 2025-04-28

🔬 Case Study Summary
Problem

(ここに課題を記述)

Result

(ここに具体的な成果を記述)


Tech & Process

(ここに採用技術とプロセスを記述) コードを詳しく見る »

こんにちは、こんです。

今回は「毎日の在庫状況をもっと見える化できないかな?」と思って、
ロジレスAPIとスプレッドシートを使ってみた実験記録を残しておきます。


実験のきっかけ:在庫推移が把握しづらい困りごと

こんなこと、起きていませんか?

  • 毎日の在庫の増減が、パッと見でわからない

  • WMS連携後の在庫反映タイミングが見えづらい

  • 売れる在庫(フリー在庫)と引当在庫のバランスが把握しにくい

「なんとかしたいな」と思って、試してみることにしました。


作ってみたもの(システムの概要)

今回はこんな仕組みを作ってみました:

  • ✅ LOGILESS APIから在庫データを自動取得

  • ✅ 毎日20:30以降にスプレッドシートへスナップショット保存

  • ✅ 総SKU数、総PCS数、フリー率・引当率を自動計算

  • ✅ 折れ線グラフで日別推移を可視化

コードは書かず、GASとChatGPTのサポートで作り上げました。


実感したメリット

使ってみて感じた「これは良かったな〜」という点です:

1. 在庫状況が一目でわかるようになった

日別スナップショットを可視化したことで、
「いつどれだけ在庫が動いたか」が直感的にわかるようになりました。

2. 負荷をかけずに日次更新できる

トリガー設定をしたことで、毎日自動で最新情報が記録されるため、
人手をかけずに運用できています。

3. 異常検知のきっかけになる

急激な在庫増減がグラフで見えるため、
「このSKUで何か起きてる?」と気づくきっかけにもなります。


実際の画面イメージ

  • 【在庫シート】:日付ごとの在庫データ記録

  • 【グラフシート】:SKU数推移・PCS数推移・フリー率・引当率の可視化


技術構成と工夫ポイント

使用技術

  • Google Apps Script(GAS)
     → ロジレスAPIとの連携・データ加工・トリガー設定

  • Google スプレッドシート
     → 日次在庫スナップショットの保存、グラフによる可視化

  • ロジレスAPI(logical_inventory_summariesエンドポイント)
     → 保管中在庫・引当在庫をAPI経由で取得

主な工夫ポイント

1. API大量データに対応するためのフィルタリング

ロジレスの在庫は8万件超という大量データでしたが、
「フリー在庫があるものだけ」「引当在庫があるものだけ」を条件付きで取得することで、
実際の取得件数を2万件程度に絞り込み、大幅にパフォーマンスを向上させました。

(min_free=1とmin_allocated=1パラメータを活用)

2. 自動リトライ・エラー耐性

1回あたり最大100件までしか取れないAPI仕様に合わせ、
ページング(page=1, 2, 3...)で全件取得しながら、
エラー時にも中断しないよう例外ハンドリングを組み込みました。

3. 日次トリガー自動実行

Google Apps Scriptの時間主導型トリガーを設定し、
毎日20:45頃(WMS更新完了後)に自動でスナップショットを取得するように設計しました。

4. データとグラフを完全自動同期

データ保存後、スプレッドシート上の折れ線グラフも同時に再生成。
手動でグラフ更新をする手間をゼロにしました。


実際に書いたGASのざっくり構成

fetchInventorySnapshotV2()
  └ fetchInventoryByConditionV2()
    ├─ min_free=1のデータ取得
    └─ min_allocated=1のデータ取得
  └ mergeInventoryData()
  └ スナップショット保存

createInventoryGraphs()
  └ InventorySnapshotシートからデータ取得
  └ 折れ線グラフ自動作成(4種)

今後:グラフの自動更新をさらに最適化します!

今回は「在庫推移の可視化」まで完成させましたが、
次回はさらに便利にするために、

  • スナップショット取得とグラフ作成の完全自動化

  • さらに見やすいダッシュボードレイアウトづくり

にチャレンジしていきます!

「これ、自分もできそうかも」と思ってもらえたらうれしいです🦊


まとめ:まずは小さく試してみるのがいい

今回の実験は、「日次の在庫変動を見える化する」という小さな目標でしたが、
やってみるとデータの蓄積・見える化が本当に強力な武器になると実感しました。

いきなり完璧を目指さず、まずは小さく試して、
日々改善していくスタイルがやっぱり合ってるな〜と思っています。

それでは、また次の実験で!🦊


#ノーコード #業務改善 #GASで業務効率化 #ロジレスAPI #スプレッドシート活用


✨補足

  • 今回はGASとロジレスAPIの組み合わせですが、応用すれば他のECプラットフォーム在庫も同様に可視化できそうです。

  • 「毎日の小さな変化を記録する」って本当に大事だなと改めて感じた1日でした!