Federated Learning API: API 一覧
当ドキュメントでは、Federated Learning APIについて記述しています。
実行方式は一部APIを除き JSON-RPC v2.0 を利用します。
Pythonの実行環境では Federated Learning API をより簡単に扱うための API Client を使用することもできます。 詳しくは、 Federated Learning API一覧 (Python API Client) を参考にしてください。
JSON-RPC v2.0
リクエスト例:
JSON-RPC v2.0 を使用する場合は、各APIの仕様を参考に次のようなリクエストを作成してください。
- method: str: 呼び出すAPIを指定します
- params: dict: APIのパラメータを指定します。パラメータが不要な場合は、省略可能です。
{
"jsonrpc": "2.0",
"id": 1,
"method": "fl.initialize_model_store",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
レスポンス例:
リクエストが成功した場合、次のようなレスポンスが返します。
- result: 成功したリクエストのレスポンス
{"jsonrpc": "2.0", "result": {"id": "xxx", ...}, "id": 1}
リクエストがサーバ側で失敗した場合、次のようなレスポンスが返ります。
- error: 失敗したリクエストのエラー情報
{"jsonrpc": "2.0", "error": {"code": -32601, "message": "Method not found"}, "id": "1"}
fl.get_server_version
Federated Learning API のサーバーバージョンを返します。
パラメータ
本メソッドにはパラメータはありません。
戻り値
Federated Learning API のサーバーバージョンを戻します。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_server_version",
"params": {
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": "0.0.2",
"id": 1,
"jsonrpc": "2.0"
}
fl.initialize_model_store
モデルストアを新規に作成します。
パラメータに指定したモデルストアが既に存在している場合は、本メソッドは何もしません。
パラメータ
- model_store_ddc:
string-- モデルストア名。
戻り値
モデルストアのデータセット情報が戻されます。
詳細は dataset_info を参照してください。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.initialize_model_store",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": {
"id": 19,
"session_id": null,
"usename": "evwh_admin",
"ddc_type": "table",
"short_form": "my_store",
"long_form": "my_store_1770065416.73731",
"realname": "provenance.prov_07d769d7d240ba22d1d6c173f4b46add",
"created_at": {
"_type": "datetime",
"val": "2026-02-02T20:50:16.737310+09:00"
},
"committed_at": {
"_type": "datetime",
"val": "2026-02-02T20:50:16.889086+09:00"
},
"prepared_activity_id": null
},
"id": 1,
"jsonrpc": "2.0"
}
fl.exists_store
モデルストアの存在を確認します。
パラメータ
- model_store_ddc:
string-- モデルストア名。
戻り値
モデルストアが存在するか否かを戻します。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.exists_store",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": true,
"id": 1,
"jsonrpc": "2.0"
}
fl.delete_store
モデルストアを削除します。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - raise_if_no_exists:
boolean-- 指定したモデルストアが存在しないときの処理を指定します。 本項目は省略可能です。 省略された場合はtrueとなります。true-- モデルストアが存在しなければエラーにします。false-- モデルストアが存在しなければ何もしません。
戻り値
モデルストアが削除されたときは 1 が戻されます。
raise_if_no_exists に false を指定した場合は、モデルストアが存在しなければ 0 が戻されます。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.delete_store",
"params": {
"model_store_ddc": "ddc:my_store",
"raise_if_no_exists": true
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": 1,
"id": 1,
"jsonrpc": "2.0"
}
fl.put_model
モデルストアにモデルを登録します。
本メソッドは JSON-RPC ではなく、multipart/form-data 形式のデータを POST します。 詳細は実行例を参照してください。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - model_kind:
string-- モデルの種類。 任意の文字列を指定できます。 - model_description:
string-- モデルの説明。 任意の文字列を指定できます。 - model_meta:
object-- モデルのメタ情報。 JSON Object 形式で任意の情報を指定できます。
戻り値
モデル情報が戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"model_store_ddc": "ddc:my_store",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
}
}
リクエスト実行
curl -H "Content-type: multipart/form-data" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST \
-F data="$(<request.json)" \
-F file="@model.dat" \
https://localhost/api/v1/fl/jsonrpc/upload/fl.put_model
レスポンス
{
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:03:43.070207+09:00"
},
"hop_count": 0,
"location": [
0,
0
],
"model_description": "this is my sample model",
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_id": "1337adf6-a974-49a7-8541-d4a0e742f34c",
"model_kind": "my_model",
"model_meta": {
"created": "2025-07-01 01:02:03",
"loss": 0.123,
"version": "1"
},
"model_size": 11,
"model_state": 10,
"round": 0,
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:03:43.070203+09:00"
},
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9"
}
fl.put_aggregated_model
モデルストアに集約済みモデルを登録します。
本メソッドは JSON-RPC ではなく、multipart/form-data 形式のデータを POST します。 詳細は実行例を参照してください。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - model_kind:
string-- モデルの種類。 任意の文字列を指定できます。 - model_description:
string-- モデルの説明。 任意の文字列を指定できます。 - model_meta:
object-- モデルのメタ情報。 JSON Object 形式で任意の情報を指定できます。
戻り値
モデル情報が戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"model_store_ddc": "ddc:my_store",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
}
}
リクエスト実行
curl -H "Content-type: multipart/form-data" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST \
-F data="$(<request.json)" \
-F file="@model.dat" \
https://localhost/api/v1/fl/jsonrpc/upload/fl.put_aggregated_model
レスポンス
{
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:13:38.442172+09:00"
},
"hop_count": 0,
"location": [
0,
0
],
"model_description": "this is my sample model",
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_id": "97e8de6a-5794-41c8-af15-65090af98b7d",
"model_kind": "my_model",
"model_meta": {
"created": "2025-07-01 01:02:03",
"loss": 0.123,
"version": "1"
},
"model_size": 11,
"model_state": 30,
"model_store_ddc": "my_store_1770066216.325904",
"round": 0,
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:13:38.442169+09:00"
},
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9"
}
fl.feedback
モデルストア内のモデルを上流のモデルストアにフィードバックします。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - model_id:
string-- モデル ID。
戻り値
上流のモデルストア側に登録されたモデルのモデル情報が戻されます。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.feedback",
"params": {
"model_store_ddc": "ddc:my_store",
"model_id": "1337adf6-a974-49a7-8541-d4a0e742f34c"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": {
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:11:23.164858+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:11:23.164861+09:00"
},
"location": [
0,
0
],
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "cea09504-9cdd-4eb1-a5a7-74bd43a12b32",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 20,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0,
"model_store_ddc": "my_store_1770066216.325904"
},
"id": 1,
"jsonrpc": "2.0"
}
fl.load_model
モデル ID を指定して、モデルストアのレコードを取得します。
本メソッドは JSON-RPC ではなく、API のレスポンスとしてモデルデータそのものを返します。 詳細は実行例を参照してください。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - model_id:
string-- モデル ID。
戻り値
モデルデータが戻されます。
実行例
リクエストデータ
{
"model_store_ddc": "ddc:my_store",
"model_id": "4da3acd8-4641-4687-a7e6-db4d7ae4ad5c"
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc/download/fl.load_model \
> model.dat
レスポンス
レスポンスとしてモデルデータが戻されます。
fl.request_transfer
上流のモデルストアから最新の集約済みモデルを取得してモデルストアに格納します。
パラメータ
- model_store_ddc:
string-- モデルストア名。
戻り値
格納されたモデルのモデル情報が戻されます。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.request_transfer",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
"result": {
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:15:00.491964+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:15:00.491967+09:00"
},
"location": [
0,
0
],
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "ba13004e-161b-4f10-96d5-eab4efe3f99f",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 40,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0,
"model_store_ddc": "my_store_1770066216.325904"
},
"id": 1,
"jsonrpc": "2.0"
}
fl.get_model_info
指定したモデルストアの指定したモデルの情報を取得します。 モデル本体のデータは含まれません。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - model_id:
string-- モデル ID。
戻り値
モデル情報が戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_model_info",
"params": {
"model_store_ddc": "ddc:my_store",
"model_id": "1337adf6-a974-49a7-8541-d4a0e742f34c"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": {
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:03:43.070203+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:03:43.070207+09:00"
},
"location": [
0,
0
],
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "1337adf6-a974-49a7-8541-d4a0e742f34c",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 10,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0
},
"id": 1,
"jsonrpc": "2.0"
}
{ "end_datetime": { "_type": "datetime", "val": "2025-07-11T14:35:29.520628+09:00" }, "hop_count": 0, "location": [ 0.0, 0.0 ], "model_description": "this is my sample model", "model_hash": "e9a5b77d4b6794a47ad0ba1682185148", "model_id": "b9817ad7-3c69-4beb-ba45-633e139a59aa", "model_kind": "my_model", "model_meta": { "created": "2025-07-01 01:02:03", "loss": 0.123, "version": "1" }, "model_size": 17, "model_state": 10, "round": 0, "start_datetime": { "_type": "datetime", "val": "2025-07-11T14:35:29.520625+09:00" }, "tenant_id": "id-party" }
## fl.exists_model
指定したモデルストアの指定したモデルの存在を確認します。
### パラメータ
- model_store_ddc: `string` --
モデルストア名。
- model_id: `string` --
モデル ID。
### 戻り値
モデルが存在すれば true を返します。
存在しなければ false を返します。
### 実行例
#### リクエストデータ
```json
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.exists_model",
"params": {
"model_store_ddc": "my_store",
"model_id": "b9817ad7-3c69-4beb-ba45-633e139a59aa"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": true,
"id": 1,
"jsonrpc": "2.0"
}
fl.delete_model
モデルストアからモデルを削除します。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - model_id:
string-- モデル ID。
戻り値
1 が戻されます。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.delete_model",
"params": {
"model_store_ddc": "ddc:my_store",
"model_id": "634e44c7-49b7-49ce-807c-cfd344fc3781"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": 1,
"id": 1,
"jsonrpc": "2.0"
}
fl.delete_all_model
指定したモデルストアの全てのモデルを削除します。
パラメータ
- model_store_ddc:
string-- モデルストア名。
戻り値
1 を返します。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.delete_all_model",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": 1,
"id": 1,
"jsonrpc": "2.0"
}
fl.get_models
モデルストアに登録されているモデルの情報を取得します。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - conds:
condition-- 取得条件。 - offset:
integer-- 取得開始位置。 - limit:
integer-- 取得件数。 - order:
string-- 結果の並び替えの基準にするカラム名。
戻り値
モデル情報が配列として戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_models",
"params": {
"model_store_ddc": "my_store",
"conds": {
"=": ["model_state", 10]
},
"offset": 0,
"limit": 1,
"order": "-start_datetime"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": [
{
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:03:43.070203+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:03:43.070207+09:00"
},
"location": "010100000000000000000000000000000000000000",
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "1337adf6-a974-49a7-8541-d4a0e742f34c",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 10,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0
}
],
"id": 1,
"jsonrpc": "2.0"
}
fl.get_model_info_latest
指定したモデルストアの最新のモデル情報を取得します。
パラメータ
- model_store_ddc:
string-- モデルストア名。
戻り値
モデル情報が戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_model_info_latest",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": {
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:15:00.491964+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:15:00.491967+09:00"
},
"location": [
0,
0
],
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "ba13004e-161b-4f10-96d5-eab4efe3f99f",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 40,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0
},
"id": 1,
"jsonrpc": "2.0"
}
fl.get_latest_feedbacked_models
指定したモデルストアから最新の feedbacked モデル情報の一覧を取得します。
パラメータ
- model_store_ddc:
string-- モデルストア名。 - round:
int-- 対象のラウンド。現在は使用されません。任意の整数を指定してください。
戻り値
モデル情報が配列として戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_latest_feedbacked_models",
"params": {
"model_store_ddc": "ddc:my_store",
"round": 0
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": [
{
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:11:23.164858+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:11:23.164861+09:00"
},
"location": [
0,
0
],
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "cea09504-9cdd-4eb1-a5a7-74bd43a12b32",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 20,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0
}
],
"id": 1,
"jsonrpc": "2.0"
}
fl.get_latest_aggregated_model
指定したモデルストアから最新の aggregated モデル情報を取得します。
パラメータ
- model_store_ddc:
string-- モデルストア名。
戻り値
モデル情報が戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_latest_aggregated_model",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": {
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:13:38.442169+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:13:38.442172+09:00"
},
"location": [
0,
0
],
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "97e8de6a-5794-41c8-af15-65090af98b7d",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 30,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0
},
"id": 1,
"jsonrpc": "2.0"
}
fl.get_latest_transferred_model
指定したモデルストアから最新の transferred モデル情報を取得します。
パラメータ
- model_store_ddc:
string-- モデルストア名。
戻り値
モデル情報が戻されます。
詳細は model_info を参照してください。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_latest_transferred_model",
"params": {
"model_store_ddc": "ddc:my_store"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": {
"start_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:15:00.491964+09:00"
},
"end_datetime": {
"_type": "datetime",
"val": "2026-02-02T21:15:00.491967+09:00"
},
"location": [
0,
0
],
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"model_id": "ba13004e-161b-4f10-96d5-eab4efe3f99f",
"model_kind": "my_model",
"model_description": "this is my sample model",
"model_meta": {
"version": "1",
"created": "2025-07-01 01:02:03",
"loss": 0.123
},
"model_state": 40,
"model_hash": "7c12772809c1c0c3deda6103b10fdfa0",
"model_size": 11,
"round": 0,
"hop_count": 0
},
"id": 1,
"jsonrpc": "2.0"
}
fl.get_parties
上流に登録されているパーティ情報を取得します。
パラメータ
パラメータはありません。
戻り値
パーティ情報の一覧を返します。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.get_parties",
"params": {
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": [
{
"id": "88e6e82d-9cec-4749-8759-b610315d2ca5",
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"tenant_name": "",
"description": "sample party",
"hop_count": 1,
"created_at": {
"_type": "datetime",
"val": "2026-02-02T21:47:27.818204+09:00"
},
"updated_at": {
"_type": "datetime",
"val": "2026-02-02T21:47:27.818204+09:00"
}
}
],
"id": 1,
"jsonrpc": "2.0"
}
fl.create_party
上流にパーティを登録します。
呼び出し元となったEdgeは、構成情報から TENANT_ID と TENANT_NAME を取得し、アップストリームへ転送します。
パラメータ
- description:
string-- パーティに対する任意の説明
戻り値
パーティ情報を返します。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.create_party",
"params": {
"description": "sample party"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": {
"id": "88e6e82d-9cec-4749-8759-b610315d2ca5",
"tenant_id": "0a013239-2075-40f8-bfd4-78a025da2df9",
"tenant_name": "",
"description": "sample party",
"hop_count": 1,
"created_at": {
"_type": "datetime",
"val": "2026-02-02T21:47:27.818204+09:00"
},
"updated_at": {
"_type": "datetime",
"val": "2026-02-02T21:47:27.818204+09:00"
}
},
"id": 1,
"jsonrpc": "2.0"
}
fl.delete_party
上流からパーティを削除します。
パラメータ
- id:
string-- パーティを識別するid
戻り値
削除された数を返します。
実行例
リクエストデータ
{
"id": 1,
"jsonrpc": "2.0",
"method": "fl.delete_party",
"params": {
"id": "88e6e82d-9cec-4749-8759-b610315d2ca5"
}
}
リクエスト実行
curl -H "Content-type: application/json" \
-H "APIKey: a4e16fab-9077-4a13-a7d5-0f1fda63cd16" \
-H "Secret: Do8feigevo8OhCi7OchoSan8zid7Fie3Aez4" \
-X POST -d "@request.json" \
https://localhost/api/v1/fl/jsonrpc
レスポンス
{
"result": 1,
"id": 1,
"jsonrpc": "2.0"
}