top of page

​タグ一覧

配列処理(73)

階層化フォーム(33)

ファイル操作(28)

開発事例(25)

シート・セル操作(23)

図形操作(15)

設計思想(13)

講座実施報告(12)

ユーザーフォーム(10)

コード自動生成(10)

ココナラ(9)

数学(8)

文字列操作(8)

GAS(7)

開発効率化(6)

Webアプリ(6)

副業(5)

アニメーション(5)

技術解説(4)

イミディエイトウィンドウ(4)

OneDrive(4)

Googleスプレッドシート(4)

クリップボード(4)

条件付き書式(4)

その他(4)

イベントプロシージャ(3)

小説(3)

HTML(3)

JavaScript(3)

Enum(2)

PDF(2)

フリーランス(2)

リスキリング(2)

Excel(2)

Outlook(2)

介護(2)

Discord(2)

シフト表(2)

LookerStudio(2)

日報(2)

カレンダー(2)

公開ツール(2)

罫線(2)

パズル(2)

小ネタ(2)

コード解説(2)

クラスモジュール(2)

Antigravity(2)

デスクトップアプリ(2)

ステータスバー(1)

コード解析(1)

バックアップ(1)

可変長引数配列(1)

ブック処理(1)

スクレイピング(1)

スプレッドシート(1)

coconala(1)

リボン登録マクロ(1)

QRコード(1)

実行予約(1)

給与計算(1)

VBA不使用(1)

リボン(1)

超勉強会(1)

スピログラフ(1)

図名描写(1)

連想配列(1)

溶接ロボット(1)

VBA(1)

保育士(1)

楽天市場(1)

経理(1)

医療(1)

文書作成(1)

発注書(1)

ショートカット(1)

WebAPI(1)

色操作(1)

スーパー開発ショートカット(1)

ライブラリ処理(1)

放課後等デイサービス(1)

児童福祉支援(1)

学校(1)

UI(1)

CAD(1)

カーソル操作(1)

チェックボックス(1)

PowerShell(1)

python(1)

WebアプリのAPIとは — 外部から操作する仕組みをやさしく解説

WebアプリのAPIとは — 外部から操作する仕組みをやさしく解説

Webアプリは、通常であれば画面を開き、ボタンをクリックしたり文字を入力したりして操作します。

しかし、Webアプリに「外部操作用のAPI」を用意すると、別のアプリやプログラムから直接Webアプリを操作できるようになります。


例えば、次のような連携が可能です。

  • 案件管理アプリから、タスク管理アプリへ作業開始を登録する

  • ExcelやGoogleスプレッドシートから、Webアプリへデータを送信する

  • スマートフォンアプリから、Webアプリの情報を取得する

  • 定期実行プログラムから、自動的にデータを更新する

  • 別の会社が提供するサービスと、自分のWebアプリを連携する

APIは、複数のシステムをつなぐための「受付窓口」のような仕組みです。


APIとは何か

APIは、正式には「Application Programming Interface」といいます。

簡単に表現すると、外部のプログラムから、Webアプリの機能を呼び出すための窓口です。

通常のWebアプリでは、人が画面を操作します。

利用者
  ↓
Webアプリの画面
  ↓
データの登録・更新

APIを使用する場合は、別のプログラムがWebアプリへ直接命令を送ります。

外部アプリ
  ↓ APIで命令を送信
Webアプリ
  ↓
データの登録・更新

つまり、APIを用意することで、人が画面を操作しなくてもWebアプリを動かせるようになります。

Webアプリを外部から操作する基本的な流れ

外部アプリからWebアプリを操作するときは、主に次の流れで処理されます。

① 外部アプリがAPIへリクエストを送る
                ↓
② Webアプリがリクエスト内容を確認する
                ↓
③ データベースへの登録・取得・更新などを行う
                ↓
④ 処理結果を外部アプリへ返す

外部アプリから送る命令を「リクエスト」、Webアプリから返される結果を「レスポンス」と呼びます。

具体例:案件管理アプリからタスクを開始する

例えば、次の2つのアプリがあるとします。

  • 案件管理アプリ … 顧客名、案件名、納期、金額などを管理するアプリ

  • タスク管理アプリ … 現在行っている作業、作業開始時刻、終了時刻、作業時間などを管理するアプリ

案件管理アプリで案件を確認したあと、タスク管理アプリを別途開き、案件名を入力して作業開始ボタンを押すこともできます。


ただし、毎回同じ情報を入力する必要があるため、手間がかかります。

そこで、タスク管理アプリに外部操作用のAPIを用意します。

案件管理アプリ
  ↓
「この案件の作業を開始してください」
  ↓ API
タスク管理アプリ
  ↓
作業開始情報を登録

案件管理アプリの「作業開始」ボタンを押すだけで、タスク管理アプリ側にも作業情報が登録されます。

APIへ送る情報の例

案件管理アプリから、次のような情報を送信します。

{
  "projectId": "P-001",
  "projectName": "売上集計ツールの開発",
  "customerName": "サンプル株式会社",
  "taskName": "VBAコード作成",
  "startTime": "2026-07-12T10:00:00+09:00"
}

送信する内容には、例えば次の情報を含められます。

  • 案件ID

  • 案件名

  • 顧客名

  • 作業内容

  • 作業開始時刻

  • 操作したユーザー

  • 備考

受け取ったタスク管理アプリは、この情報をデータベースへ登録します。

Webアプリから返される結果

処理が正常に完了した場合は、次のような結果を返します。

{
  "success": true,
  "message": "タスクを開始しました",
  "taskId": "T-105"
}

エラーが発生した場合は、次のような結果を返します。

{
  "success": false,
  "message": "案件IDが指定されていません"
}

外部アプリは、この結果を確認して利用者にメッセージを表示します。「タスクを開始しました」または「タスクを開始できませんでした」といった具合です。

このように、APIでは処理を行うだけでなく、処理が成功したかどうかも外部アプリへ返します。

APIのURL(エンドポイント)

APIには、操作する機能ごとにURLを用意します。

例えば、タスク管理アプリの場合は次のような構成です。

POST /api/tasks/start
POST /api/tasks/finish
GET  /api/tasks
GET  /api/tasks/105

それぞれの役割は次のとおりです。

  • POST /api/tasks/start … タスクを開始する

  • POST /api/tasks/finish … タスクを終了する

  • GET /api/tasks … タスクの一覧を取得する

  • GET /api/tasks/105 … 特定のタスクを取得する

このようなAPIのURLを「エンドポイント」と呼びます。

GETとPOSTの違い

APIでは、どのような操作を行うのかを指定します。代表的なものがGETとPOSTです。

GETは、データを取得するときに使用します。

GET /api/tasks

例えば、登録されているタスクの一覧を取得する場合に使用します。

POSTは、新しいデータを登録したり、何らかの処理を実行したりするときに使用します。

POST /api/tasks/start

例えば、新しいタスクを開始する場合に使用します。

そのほか、データの更新にはPUTやPATCH、削除にはDELETEが使用されることもあります。

APIを作ると何が便利になるのか

APIを作成する最大のメリットは、Webアプリの機能をほかのシステムから再利用できることです。

  • 二重入力を減らせる … 一つのアプリへ入力した情報を、別のアプリへ自動的に送信できます

  • 作業を自動化できる … ボタン操作や定期実行によって、データ登録や更新を自動化できます

  • 複数のアプリを連携できる … Excel、Googleスプレッドシート、デスクトップアプリ、スマートフォンアプリなど、異なるシステムを連携できます

  • 将来的な機能拡張がしやすい … 最初は案件管理アプリとの連携だけでも、後から別のアプリや外部サービスと連携できるようになります

APIを作る際に必要な機能

外部操作用APIを作る場合は、主に次の処理を用意します。

  • リクエストの受付 … 外部アプリから送られた情報を受け取ります

  • 入力内容の確認 … 必須項目が入力されているか、不正な値ではないかを確認します

  • データベース処理 … データの登録、取得、更新、削除などを行います

  • 結果の返却 … 処理が成功したか、エラーが発生したかをJSON形式などで返します

  • 認証・権限確認 … 許可されたアプリや利用者からの操作であるかを確認します

セキュリティ対策も重要

APIのURLが分かれば誰でも操作できる状態にすると、外部の第三者から不正操作される可能性があります。

そのため、APIには認証機能を用意する必要があります。代表的な方法として、APIキーがあります。

Authorization: Bearer xxxxxxxxxxxxx

外部アプリがAPIを呼び出す際に、専用のキーを一緒に送信します。Webアプリ側は、正しいキーが送られている場合のみ処理を実行します。

外部アプリ
  ↓ APIキーと一緒にリクエスト
Webアプリ
  ↓ APIキーを確認
正しい場合のみ処理を実行

APIキーは、パスワードと同じように外部へ公開しないことが重要です。

API仕様書を用意する

APIを作成した場合は、外部アプリからどのように利用するのかを説明する資料も必要です。

API仕様書には、主に次の内容を記載します。

  • APIのURL

  • GETやPOSTなどの送信方法

  • 送信する項目

  • 必須項目

  • 返される結果

  • エラーの種類

  • 認証方法

  • サンプルコード

例えば、タスク開始APIであれば次のようにまとめます。

URL
POST https://example.com/api/tasks/start

送信データの例です。

{
  "projectId": "P-001",
  "taskName": "VBAコード作成"
}

成功時に返る結果の例です。

{
  "success": true,
  "taskId": "T-105"
}

エラー時に返る結果の例です。

{
  "success": false,
  "message": "taskNameは必須です"
}

API仕様書があることで、APIを作った本人以外でも連携処理を実装しやすくなります。

APIを利用できるシステムの例

APIは、さまざまなシステムから利用できます。

Excel VBA
Google Apps Script
Webアプリ
デスクトップアプリ
スマートフォンアプリ
Power Automate
Python
JavaScript
社内システム
外部のクラウドサービス

例えば、Excel VBAからAPIを呼び出して、Excel上の案件情報をWebアプリへ登録することも可能です。

Google Apps ScriptからAPIを呼び出し、スプレッドシートに入力された情報をWebアプリへ送ることもできます。

画面操作による自動化との違い

Webアプリ同士を連携する方法として、ブラウザ上のボタンを自動クリックする方法もあります。

しかし、画面操作による自動化は、画面のデザインやボタンの位置が変わると動かなくなる可能性があります。

API連携では、画面を経由せずに処理を直接実行します。

画面操作による連携

外部プログラム
  ↓ ブラウザを開く
画面を操作
  ↓
ボタンをクリック
APIによる連携

外部プログラム
  ↓ APIへ送信
Webアプリの処理を直接実行

長期的に安定したシステム連携を行う場合は、APIを利用する方法が適しています。

APIを作るときの基本構成

APIを持つWebアプリは、次のような構成になります。

[ 外部アプリ ]  Excel・GAS・別のWebアプリなど
      │ APIリクエスト
      ▼
[ API ]  認証・入力確認・処理の振り分け
      │
      ▼
[ Webアプリの処理 ]  登録・取得・更新・削除
      │
      ▼
[ データベース ]  Supabase・Firebase・SQLなど

外部アプリは、データベースを直接操作するのではなく、APIを通してWebアプリへ処理を依頼します。

これにより、データの入力確認や権限管理をWebアプリ側で統一できます。

まとめ

Webアプリに外部操作用のAPIを用意すると、別のアプリやプログラムからWebアプリの機能を実行できるようになります。

API連携の基本的な流れは、次のとおりです。

外部アプリが命令を送る
        ↓
APIが命令を受け付ける
        ↓
Webアプリが処理を行う
        ↓
処理結果を外部アプリへ返す

APIを利用することで、次のような仕組みを構築できます。

  • 複数のアプリ間で情報を共有する

  • 同じ情報の二重入力をなくす

  • データ登録や更新を自動化する

  • ExcelやスプレッドシートとWebアプリを連携する

  • 将来的に別のサービスとも連携できるようにする

Webアプリを単独で使用するだけでなく、ほかのシステムと連携できるようにすることで、業務全体の自動化や効率化につなげられます。

最新記事

すべて表示
Excelやデスクトップアプリから作業開始を記録できるようになりました(らくログタスク 外部連携API)

らくログタスクに、外部ツールから作業開始を登録できるAPI機能を追加しました。Web画面を開いて作業名を選ぶだけでなく、Excel VBA、PowerShell、デスクトップアプリ、社内の案件管理ツールなどから作業名を送信して、らくログタスク側に作業履歴を残せるようになります。APIトークンの発行・無効化にも対応しました。

 
 

Excel VBAによる業務自動化・ツール開発をご検討の方へ

​"脱Excel"の前に、現状のExcelの潜在能力を120%発揮してみませんか?

softex-celwareロゴ 透過 横長.png

​インボイス登録番号:T5810983887134

  • Facebook
  • Twitter
  • YouTube

©2023 softex-celware。Wix.com で作成されました。

bottom of page