TECH BLOG

MENU

オンプレクラウド

Dr.Sum

Dr.Sum

Dr.SumにはいくつかWeb APIが用意されています。Dr.Sumの稼働監視をしたり、ファイルをアップロードしたり、DS Scriptのファイル実行したりなど様々なものが用意されています。本記事では各Web APIを使うための方法について紹介します!

 

例えば稼働監視Web APIを使って、Dr.Sumサーバーに異常が発生して動作しなくなった際にメールを送信して即座に対応するといった仕組みを構築できます。またDS Scriptで作成したスクリプトを実行する事もできるので、自由度の高い処理を運用に組み込むことが可能です。

事前準備

Dr.Sum Cloud Hubの起動

Web APIはDr.Sum Cloud Hubを経由して利用します。クラウド版を利用している方は初期状態で起動しています。オンプレ版で行う場合は、サービスからDr.Sum Cloud Hubサービスが起動されているか確認しましょう。

Web APIの利用ユーザー・グループの登録

Cloud Hubを起動すると、Web Consoleにアクセスできるようになります。ブラウザを開き、Web Consoleにアクセスします。クラウド版ではWeb Console(Cloud Hubサーバー)へのアクセスはHTTPS(ポート443)を利用するので環境に合わせて変更してください。

http(s)://<サーバー名>:6580/webconsole/

オンプレ版の例:http://localhost:6580/webconsole/
クラウド版の例:https://hogehoge.drsum.com/webconsole/

左のメニューから[Web Console管理]をクリックします。その後、[スーパーユーザーの設定]および[Web APIの実行ユーザーの設定]にそれぞれグループ・ユーザーを設定します。最後に[適用]ボタンを押します。

 

グループの権限には基本的には何も与えずに利用できます。ただし、DS Scriptのスクリプトを実行するWeb APIを使うときはデータベースの操作権限やスクリプトファイルへのアクセス権限などが必要なので、詳細はマニュアルをご参照ください。

DS Scriptのスクリプトファイルを実行する

 

Dr.Sum Web APIの使い方

APIとはApplication Programming Interfaceの略で、各企業が持っている基幹システムやその他様々なサービスとデータをやり取りする仕組みです。API自体はJavaやPythonなどのプログラム上で利用できる形式で提供されることが多く、自由度が高くサービスの開発効率を大幅に増加させますが知識がないと扱いづらいです。

その中でもWeb APIは、HTTPおよびHTTPSというルールでやり取りできる仕組みです。ブラウザでURLをたたくような感覚で利用でき、より多くのユーザーが扱えるようになっています。

Web APIの利用にあたって、大まかに分けて必要な情報が5つあります。

それぞれDr.SumのWeb APIを例に説明していきます。

サーバーURL

サーバーURLは「どのDr.Sumへアクセスするか?」を決める情報になります。

http(s)://[IP or ホスト名]:[ポート番号]/[コンテキスト]

Cloud Hubへアクセスするためポート番号はデフォルトで「6580」です。コンテキストは利用するWeb APIによって異なります。基本的には「api」ですが、「稼働監視」のWeb APIの場合は「webconsole」になります。

オンプレ版の例:http://localhost:6580/api
クラウド版の例:https://hogehoge.drsum.com/api

ヘッダ

Dr.SumのWeb APIを使うユーザーはBASIC認証を使って通信を行います。BASIC認証自体はID/パスワードを平文で送る方法のため、HTTPSでの通信方式が推奨されています。後に紹介するcURLを使った方法では、下記のようにダブルコロン「:」で区切ってユーザーID/パスワードを指定します。

curl --basic -u "userid:password"

リソースURI

リソースURIは利用するWeb APIによって異なりますので、利用する際はそれぞれのマニュアルページをご覧ください。例えば「ルートパスを取得する」Web APIは下記がリソースURIになります。

v1.0/file/root

メソッド

Dr.SumのWebAPIでは「GET」もしくは「POST」のどちらかのメソッドを使います。どのメソッドを使うかはWeb APIごとに異なりますが、Dr.Sumからなにかデータを取得する場合(ファイル一覧の取得や稼働状況の取得)はGET、データを送る場合(ファイルなどをアップロード)はPOSTを指定するケースが多いです。どのメソッドを利用するかは各Web APIのマニュアルに記載がありますのでご参照ください。後に紹介するcURLを使った方法では、下記のように「-X [メソッド名]」と指定します。

curl -X GET

パラメータ

各Web APIごとに必要なパラメータが異なっています。例えば、ファイル一覧を取得するAPIの場合は「どのフォルダの一覧を取得するか」を指定するパラメータが用意されています。cURLを使う場合は下記のように「-F “[パラメータ名]=[値]”」と指定します。指定スべきパラメータについては各Web APIのマニュアルをご参照ください。

curl -F "dir_path=C:/DrSum56/CloudHubServer/webconsole/test"

cURLを使って実際にWeb APIを使ってみる!

Web APIを使う上で必要な情報がそろったところで、早速Web APIを使ってみましょう。今回はWindows・Linux ともに標準で利用できるcURLというコマンドを使った方法を紹介します。前章で紹介したサーバーURL、ヘッダ(認証情報)、リソースURI、メソッド、パラメータをそれぞれ繋げて記述します。「ルートパスを取得する」Web APIを例にすると、下記のように記述します。

curl -i --basic -u "userid:password" -X GET http://localhost:6580/api/v1.0/file/root
ルートパスを取得する

ではコマンドを入力してEnterを押して実行してみましょう。cURLでは「-i」を指定することで、コマンドが成功したかといった結果(レスポンスと呼びます)を確認することができます。成功するとこのようなテキストが出力されます。

HTTP/1.1 200
Content-Type: application/json
Content-Length: 28
Date: Wed, 07 Jun 2023 15:45:00 GMT

{"root_path":["C:/DrSum56"]}

一行目の「200」という番号はステータスコードと呼ばれ、200だと成功、404だとURLが間違っている可能性が高いです。特に、エラーコードが401及びエラーメッセージに「Authentication failed.」などと返ってきた場合はユーザーID/パスワードが間違っている可能性が高いので見直してみましょう!

まとめ

本記事では、Dr.SumのWeb APIの簡単な使い方を紹介しました。Dr.SumにはたくさんのWeb APIが用意されています!

Web API一覧

Web APIを使って日々の業務の効率化を実現いただければと思います!今後は各Web APIにフォーカスした記事を紹介する予定です。

この記事にリアクションしてみませんか?

  • 分かりやすい (0)
  • 問題が解決した (0)
評価いただいてありがとうございます!
プロフィールへ

宇根 昌和

新卒でウイングアーク1stへ入社、プリセールス活動を行っています。Pythonをベースに様々なツールからデータをDr.Sumへ集約しMotionBoardで可視化する仕組みを作ったり、Web APIを使ったデータ蓄積ノウハウをテーマにイベント登壇したりしています。Dr.Sum及びMotionBoardを中心とした役立つ情報を発信していきます!

Related article

Related article関連記事

Pick up

Pick upおすすめ記事

【まとめ】SVFCloud帳票をinvoiceAgentに連携する方法

  • #帳票作成・出力
  • #システム連携
  • #電帳法
  • #文書定義
  • #処理定義

2024.04.18

SVF

Dr.Sum Copilotをインストールしてみた【OpenAI】

  • #Copilot

2024.04.05

Dr.Sum

特定の文字列で分割して階層構造をつくりたい!~DS Scriptで分割する~1

  • #データ加工
  • #DS Script

2023.07.17

Dr.Sum

Ranking

Rankingランキング

1

Excelのデータを加工したい。~変換(横持ち⇔縦持ち)について~

  • #データ取り込み
  • #データ加工

2021.01.19

Dr.Sum

2

Dr.Sum Copilotをインストールしてみた【OpenAI】

  • #Copilot

2024.04.05

Dr.Sum

3

【Excelの取り込み】データベースにExcelデータをインポートしよ…

  • #データ取り込み

2020.08.14

Dr.Sum

Info

Information

ウイングアーク1stからのお知らせ