FileMaker × AWSでAPIのWebhookを受け取り相互連携を実現させる

Picture of 執筆者:諏訪田 隆星
執筆者:諏訪田 隆星

FileMakerエンジニア

FileMaker(ファイルメーカー)では、標準機能を活用することで外部APIと簡単に連携することが可能です。
しかし、外部API側からFileMakerにデータを送信したい場合は、少し工夫が必要になります。
一般的にこのような連携には「Webhook」という仕組みが用いられ、FileMaker Data APIを通じてデータを受け取る形になります。
このとき必須となるのがFileMaker側の認証です。
ところが、多くの外部サービスではWebhook送信時にカスタム認証の設定ができず、FileMaker側のAPI認証を通すことができません。
その課題を解決する手段として、外部認証を代行する仕組みが必要になります。
そこで登場するのが、AWS LambdaとAPI Gatewayを活用した中継サーバーの構築です。
この中継サーバーが、外部サービスからのWebhookを一旦受け取り、必要な認証処理を行った上で、FileMaker Data APIに対して安全かつ確実にデータを送信する役割を果たします。

目次

用語の解説

今回の解説にはいくつかのIT用語が出てきますので先に解説し、本題に入っていきます。

Webhook

Webアプリケーションで特定のイベントが発生した際に、他のサービスやアプリケーションにリアルタイムで通知を送信する仕組みです。

Lambda

Amazon Web Services (AWS) が提供する、イベントに応じてあらかじめ作成しておいた関数(コード)を実行するものです。
今回はFileMakerの認証からWebhookで受け取ったデータをFileMakerに渡すという関数を作成します。

API Gateway

Lambdaと同じくAWSが提供する、APIの管理・保護・実行を容易にするための仕組みです。
クライアントからのリクエストを、受取りLambdaの関数を動かすことができます。

FileMakerとWebhook

FileMakerでWebhookを受け取るには?

FileMakerではセキュリティの関係上、Webhookを受け取るには事前に認証を通す必要があります。
しかし、多くのWebサービスではこの認証方式に対応していないため、直接Webhookを受け取るのは難しいのが現状です。
では、どうやってFileMakerでWebhookを受け取るのかというと、ポイントは「FileMakerとWebhookの間に中継サービスを挟む」ことです。

中継サービスの選択肢とそれぞれの特徴

この中継には、独自に開発したシステムを使う方法もありますし、Google Apps Script(以下GAS)や AWS などのクラウドサービスを活用することでも対応が可能です。
用途やスキルに応じて柔軟に選べるのが特徴です。
ただし、独自開発の場合はバックエンドやサーバの知識(Node.js や PHP など)が必要で、サーバ環境の準備も含めてハードルが高く、実際に選ばれるケースは少数です。

GASが選ばれにくい理由

GASは、Googleアカウントがあれば誰でも無料で使えるため、「とりあえず試してみたい」という用途には適しています。
しかし、GASは外部からのPOSTリクエストを受け取る際に制限があり、Webアプリとして公開して「全員にアクセスを許可」する必要があります。
この点がセキュリティ面でネックとなるため、業務現場での採用はほとんど見られません。

では、何を使えばいいのか?

そのため、今回はAWSを使ったWebhook中継の仕組みについて紹介していきます。

Lambdaの設定

では、AWSにログインしましょう。(AWSのアカウントは作成済前提で進めていきます。)
ログインしましたら左上の検索窓でLambdaを検索し、サービスの中に表示されるLambdaをクリックして開きましょう。

開くと右上に関数を作成とありますのでクリックします。

ではどのような関数を作成するのか決めていきます。
関数は「一から作成」を選択し「関数名」を入力、「ランタイム」を選択します。
今回は関数名をfmwhk-dev-lambda-webhooktest、ランタイムをPython3.13を選択しています。
では、右下にある関数の作成をクリックしLambda関数を作成しましょう。

関数が作成されたら今度はFileMakerの認証をし受け取ったデータをFileMakerに入れる関数を書いていきます

※ 今回はイメージしやすいよう、あえて簡易的なコードでご紹介しています。
実際の導入時には、より柔軟で安全性の高い構成を検討することをおすすめします。

API Gatewayの設定

次はAPI Gatewayを作成していきます。
先ほどの検索窓から探してもいいのですが、今回はLambdaから直接作成していきましょう。

設定が表示されますので以下のように設定します。
トリガー:API Gateway
インテント:新規APIを作成
APIタイプ:REST API
セキュリティ:IAM
API名:fmwhk-dev-apigateway-webhooktest(任意)
デプロイされるステージ:fmwhk(任意)

作成するとLambda関数に戻りますので、設定のトリガーを確認するとAPIのエンドポイント、つまり中継先のURLが作成されています。
Webhookを設定する際にこのAPIエンドポイントを指定することでFileMakerにデータが送られるようになり、FileMakerからWebサービス、WebサービスからFileMakerへとデータが相互連携できるようになります。

まとめ

いかがでしたでしょうか。
AWSを活用することで、FileMaker単体では難しかった処理や連携がスムーズに実現でき、システムの可能性が大きく広がることがお分かりいただけたかと思います。
今回はLambdaとAPI Gatewayを使ったWebhook連携をご紹介しましたが、AWSには他にもデータ保存(S3)やAI生成(Bedrock)など、さまざまなサービスがあります。
これらを組み合わせることで、業務の自動化・効率化・高度化がさらに進みますので興味があればぜひお問い合わせ下さい。

また、株式会社ブリエでは、FileMakerを活用したシステム開発や運用支援を行っています。
業務システムのセキュリティについてのご相談もお気軽にお問い合わせください。

まずは、資料請求

ダウンロードできる資料の内容
・資料はすぐにメールで届きます
・1分でわかる株式会社ブリエの会社概要
・FileMaker開発の概算料金

無料相談はこちら

お問い合わせ・ご相談できること
・自社の業務の一元管理の進め方 / 改善について相談したい
・どのような機能が作れるのか知りたい
・自社に合う形で導入したときの料金を知りたい

Picture of 執筆者:諏訪田 隆星
執筆者:諏訪田 隆星

多岐にわたる業種での経験を経て、現在はFileMakerを中心に活躍中のエンジニアです。ローコード開発を得意としながらも、Django、React、Flutterなどの技術にも挑戦し、幅広い開発スキルを習得。常に自分の技術を磨き、より良いソリューションを提供できるよう、継続的にスキルアップを図っています。多彩な技術を駆使して、クライアントのニーズに応える柔軟性と、迅速かつ効果的な開発力が強みです。

【全国対応】株式会社ブリエは、企業の経営課題であるDX化、業務効率化、ペーパーレス化、情報の一元管理など、ビジネスニーズの変化に合わせてFileMakerで業務システムを開発し、柔軟に拡張して解決します。あらゆる業種や規模の企業、非営利団体、学校に固有の課題を解決するカスタムAppをご提案します。

新着記事
アーカイブ
まずは、資料請求

ダウンロードできる資料の内容
・資料はすぐにメールで届きます
・1分でわかる株式会社ブリエの会社概要
・FileMaker開発の概算料金

無料相談はこちら

お問い合わせ・ご相談できること
・自社の業務の一元管理の進め方 / 改善について相談したい
・どのような機能が作れるのか知りたい
・自社に合う形で導入したときの料金を知りたい