HILTI ON!Track Unite APIとは?導入方法と資産管理を自動化した実例

HILTI ON!Track

工事資産の管理を加速させる『HILTI ON!Track』!
更に超加速させるAPI(ON!Track ユナイト)を使ってみました!

自社では HILTI 製の資産管理アプリ 『HILTI ON!Track』 を導入しました。
そして今回、公開されている API 『ON!Track Unite』 を実際に触ってみたので、
導入方法・注意点・実運用での活用例を備忘録としてまとめます。

結論から言うと──
資産数が多い現場ほど、API活用の必要性は高まります!

つかだ
つかだ
PR

建設業の待遇UPはエージェント経由転職がオススメ!
私もエージェントの建設業内転職で年収UP&家族との時間を増やせました!

HILTI ON!Track Unite(API)とは?

【公式ドキュメント】
ON!Track Unite Hub – Hilti ON!Track Unite

ON!Track ユナイトは非常に多くの操作を幅広く実行できる公式API です。
API 経由で操作できる範囲が非常に広く、手動で行える作業ほぼ全てプログラム化出来るAPIです。

できること(一部抜粋)

  • 資産ステータスの入力・更新・取得
  • 添付ファイルなども一括登録
  • 他チャットツールのAPIなどの相性が良好

※ご使用にはHILTI ON!Trackの契約、API使用環境が必要になります

つかだ
つかだ

API導入の流れ①テクニカルユーザーのアカウント入手

HILTI ON!Track導入済みの前提で記述致します。
APIの使用には以下の4つの情報が必要になります。

  • Client ID(顧客ID)
  • Client Secret(顧客の秘密)
  • Username of the technical user(テクニカルユーザー名)
  • Password of the technical user(テクニカルユーザーパスワード)

HILTI担当営業の方に「HILTI ON!Track ユナイトを使いたい」とお伝え下さい。

  • Client ID / Client Secret / ユーザー名→ 営業経由で発行
  • パスワード→ユーザー名発行後に自分で設定可能
つかだ
つかだ

私がAPI利用申請した時は日本で初のケースだったらしく、
日本スタッフではわからず本国本社の対応となり、アカウント発行まで1ヶ月かかりました

参考:公式ドキュメント(Create an authentication request in Postmanの項)

つかだ
つかだ

API導入の流れ②トークンの発行

トークンの発行には公式ドキュメントでは、postmanの利用を紹介しています。手順も図解されていますのでご参考までに。
社内ネットワークで使う場合はSSL認証が通らない場合があるので、諸条件ご確認ください

私はpostmanは使わず、Pythonでトークン取得プログラム作成し使用しています。

  • トークンは60分有効
  • トークンが有効時、新しいトークンはリフレッシュできない
  • トークンの60分失効後に再発行できる

これはなかなか厳しい仕様でトークン取得とAPIの実行の関係性は、

  • 60分以上の間隔を開けて「トークン取得>API実行」
  • (前回のトークン取得から60分以上経過したか分岐)「トークン取得>トークン保存or保存済みトークン取得>API実行」

となります。デバッグの観点から後者になるかと思います、この点ご留意の上でシステム設計を行う必要があります。

参考:公式ドキュメント(Token lifecycleの項)

つかだ
つかだ

API実践①APIで情報を取得する

取得したトークンでgetすると上表のように資産情報を取得できます。
資産(assets)の一覧を取得して、表化し特定の列を抽出しています。
上表はpythonでpandasで表を作成しています。

https://cloudapis.hilti.com/ts/ontrack/unite/v1/assets
#上記URLを加工してフィルターをかけた結果を得ることもできます
#公式ドキュメント Parameters各項参照

"name": 資産名
"groupId":グループID
"scanCode": バーコード
"scanCodeType": コードの種類(BAC:バーコード)
"currentLocationId": 現在位置ID
"inventoryEmployeeId": 資産管理者ID
※上表はフェイク入れています

参考:公式ドキュメントAssets All operations on the Asset domain model

つかだ
つかだ

API実践②他APIとの連携

ON!Track APIから取得した情報を、チャットアプリSlackのAPI経由で送ってみました。
おそらくON!Track APIのデータ活用形の一つとして、このようなチャットアプリに通知を入れるという形があるかと思います。

asset情報には資産名と資産IDなどが格納されているのですが(上表name)、
移動履歴などは資産IDで資産情報マスタと結びついています。

資産移動履歴(transfers)に資産名を表示するには、
/transfersと/assetsをgetして、資産移動履歴内の資産IDから参照して資産名を結びつける必要があります。

つかだ
つかだ

APIが活躍できる状況は?

  • その日の移動履歴をチャットアプリに送付する(アプリの通知でもできそう?)
  • 初期設定位置(ホーム)と現在位置が異なり、間違えた場所に格納した場合に本人にチャットアプリで通知
  • 資産名などの名前ルール変更時、一括変更できる(webアプリ標準機能では不可)

下記のような仕組みを現在考えています、業務の合間に作成するのでなかなか進まないですが…

つかだ
つかだ

これはHILTI ON!Trackのかなり致命的な弱点なのですが、
インポート機能は新規作成しかできません。
(記事作成日時点)

これは正直、かなり厳しい仕様です。

  • Excel インポート:新規作成のみ
  • 既存資産の更新:不可
  • 名称変更=「1つずつwebアプリで手動」 or 「一括削除 → 一括再登録」
  • 移動履歴・添付ファイル:インポートでは引き継がれない→結局手動添付


また、エクスポートしたExcelとインポートするExcelは形式や表記が異なり、
エクスポートしたExcelの転用にはかなり複雑な手動整形と手動追記を必要とします

これらに対して、APIでputするプログラムを作成すると名称のみ一括変更ができます。

つかだ
つかだ

ON!Trackアプリの通知機能も研究すればもっと活用できそうなのですが、
海外開発アプリの日本語訳がおかしいところが多々あり、ちょっと苦戦しています…。
正直これの日本語を解析・検証してアプリを使いこなすくらいなら、
APIでプログラム書いたほうが速いレベルで誤記が多いです。

つかだ
つかだ

まとめ

管理資産数が多く保証書や検査書の添付などが多い場合、APIの活用を大変オススメ致します。

特に”致命的な欠点”として挙げた「インポートで更新ができない」点は非常に厳しく、現状APIでフォローするしかありません。

また、貸出・返却を管理者不在で完了させるシステムなので「適正な場所にあるか」という監視体制が重要なのですが、
この問題もAPIで取得できるデータ同士の参照でオートメーション化できます。

このような資産管理アプリが目指す「管理の非属人化」「事務手続きの削減」を実現するには、
webアプリでは足りていない領域を、APIでフォローする事を推奨致します。

つかだ
つかだ

コメント

タイトルとURLをコピーしました