
FileMaker開発者が知っておくべき「OData」活用法:Data APIとの違い(基本編)
目次
🎯 はじめに
FileMakerで「OData」が使えるようになったのは、Version 19からです。
けっこう歴史ある外部連携方式ですが、同じようなことがData APIでできることもあって、今ひとつ普及していないような感じがします💦
そこで今回は、「OData」でFileMakerにアクセスする方法をわかりやすく説明していきます!
今回はまず、ODataを使い始めるための事前準備と、ブラウザで試せる基本的なデータ取得方法をご紹介する【基本編】です。
【実践編】では、より複雑な検索方法やData APIとの比較も解説するので、ぜひ続けてご覧ください。
🚀 事前準備:ODataを使い始めるための第一歩
⚠️ 重要なポイント
OData の利用は、FileMaker Server との通信になりますので、サーバーに対して、OData の利用許可を与えます。
注意: スタンドアロンではODataは使用できません

✅ 設定手順
Step 1: FileMaker Serverの管理コンソールにログイン
Step 2: 「OData」タブで設定を有効化
Step 3: アクセス権セットの設定
- 「拡張アクセス権」を開く
- 「ODataでのアクセス(fmodata)」にチェックを入れる
これで事前準備は完了です!✨

🌐 ブラウザで試す!ODataの確認方法
ODataの基本的な仕組み
ODataは、URLでサーバーに問い合わせる方式です。ブラウザでURLを叩くと、HTMLで結果を返してくれるのが便利なポイント!
📝 基本的なアクセス方法
では、「Claris FileMaker OData API ガイド」に従って、FMServer にODataからアクセスしてみます。
🔶データベース名の取得
「 https://<ホスト>/fmi/odata/<バージョン> 」
ポイント:
- 2025年8月現在、バージョンは常に「v4」
- Basic認証でログインが必要
🔐 ログイン方法
ブラウザで、この通りに入力してみます。
※ブラウザでのログイン、データ表示は、データの抽出、集計などの処理の確認をするための操作となります。

ユーザー名とパスワードを求められました。
ODataはBasic認証でログインするので、このようなダイアログが表示されるようです。
ODataのアクセス権限が有効になっているアクセス権セットのユーザー名とそのパスワードを入力しましょう。

📊 データの表示確認
ログインに成功すると、HTMLのテーブル形式でデータが表示されます。
例えば「Demo」という私が作ったファイルファイルをクリックすると:
🔘クリック:「Demo」にあるテーブルが表示されました。

🔘さらにテーブル(例:「Persons」)をクリック:(Person の複数形は Peopleですけど……)

一覧が表示されました。
https://<ホスト>/fmi/odata/<バージョン>
だけで、こんなふうにFileMakerのデータを確認できるなんて、すごいですね!🌟
注: 例で使用している「Persons」のデータは、生成AIで作成した架空のものです
🔍 レコードの検索を試す!:主キーでの検索
基本的なレコード取得
「Claris FileMaker OData API ガイド」には、データ取得のいろいろなアクセス方法が例示されています。
📌 基本形:「レコードの取得」を見てみます。
https://<ホスト>/fmi/odata/<バージョン>/<データベース名>/<テーブル名>
📌 今回の「Demo」に合わせる:
https://xxxx.xxxx.xxx/fmi/odata/v4/Demo/Persons
この形式でブラウザからアクセスすると、テーブルの全レコードが取得できます。
🎯 特定の1件を取得する方法
Data APIとの違い
- Data API: レコードIDを使用
- OData: フィールドに設定した「主キー」を使用
📍基本形
https://<ホスト>/fmi/odata/<バージョン>/<データベース名>/<テーブル名> (<主キーの値>)
📍今回のデモ
https://xxxx.xxxx.xxx/fmi/odata/v4/Demo/Persons(‘69E717F2-62D0-C84A-A18C-9CAFA1004192’)
となります。
これで、主キーに紐づく1件のデータが取得できます!

🤔…ところで、「主キー」とは何でしょう?
今回の「主キー」は、FileMakerでテーブル作成時に自動で設定されるものでしたが、このテーブルの場合「id」もユニークな「主キー」です。
では、実験として、「Persons」の「主キー」を削除した「Persons2」に対して、「id」でレコードを取得できるか、やってみましょう。
まずは、「Persons2」を確認します。

ご覧の通り、フィールド「主キー」を消したものです。では、
https://xxxx.xxxx.xxx/fmi/odata/v4/Demo/Persons2(1)
として実行します。

値が取得できました。
主キーについて、もう少し実験してみます。
Persons2に「uuid」というユニークなフィールドを追加しました。

並び順もid より前にしています。
さて、こうすると、どうなるでしょうか。
https://xxxx.xxxx.xxx/fmi/odata/v4/Demo/Persons2

一覧表示では、作成順に表示されるようですね……。
「uuid」で取得できるでしょうか……?
https://xxxx.xxxx.xxx/fmi/odata/v4/Demo/Persons2(‘61191D6A-129C-4A34-9EDB-1E7DD0AF0077’)

Errorが出てしまいました。「id」で試してみます。
https://xxxx.xxxx.xxx/fmi/odata/v4/Demo/Persons2(1)

取得できました。
このように、ODataの主キーは、テーブルで定義された主キーの条件を満たしたフィールドのうち「最初に作成されたもの」になるようです。
主キーがどれなのかは、テーブルのメタデータを確認するとわかります。
https://<ホスト>/fmi/odata/<バージョン>/<データベース名>/$metadata
今回のデモでは
https://xxxx.xxxx.xxx/fmi/odata/v4/Demo/$metadata

となりますね。見てみましょう。
このような表が出てきました。(見切れていますが、以下、ずっと表示が続いています)
この表の各「Entity」(テーブル)の「Name」に「*」が付いているものがあります。これが、主キーになるフィールドです。
2つある場合は、先に表示されているものが主キーとなるようです。
🔗 次回予告!「レコードの検索を試す!:SQLライクなデータ取得」
いかがでしたか?今回は、ODataの基本的な使い方とブラウザでのデバッグ方法をご紹介しました。
次回の【実践編】では、ODataの真価が発揮される、より高度なデータ検索や、複数テーブルのデータをSQLのように取得する方法、そしてData APIとの具体的な比較をさらに深く掘り下げていきます。どうぞご期待ください!
次回の【実践編】では、ODataの真価が発揮される強力なデータ検索機能や、今回触れたSQLライクなデータ取得、そして Data API との比較をさらに深く掘り下げていきます。
ぜひ続きもご覧ください!
🔗 参考リンク
前編:https://fmsolution.supportas.co.jp/blog/20251008-1
後編:https://fmsolution.supportas.co.jp/blog/20251008-2
Claris FileMaker OData APIガイド