Skip to main content

APIについて

API概要

Fらくねっとは、ノースバウンドAPI(Northbound Application Programming Interface)を提供します。Fらくねっとコントローラに対して、コマンドライン実行により、機器情報の取得や操作を行うことが可能です。お客様のネットワーク管理ツール等と連携させてご活用ください。

Fらくねっとノースバウンド API は、RESTful API 設計に従って提供されており、標準の HTTP メソッドを使用して機器情報の取得や操作を行うことが可能です。 API を実行するためには、後述のログイン処理を実行しトークンを取得する必要があり、トークンを取得したユーザが持つ実行権限と同一の機能について、API 実行が可能です。また、トークンの有効期間はデフォルトで、120分となります。

API の操作について

Fらくねっとノースバウンド API の各機能については、Fらくねっとノースバウンド API ドキュメントページをご参照ください。

本項では、Fらくねっとノースバウンド API ドキュメントページの説明を記載します。

API リクエスト

項目説明
① HTTP メソッドAPI 実行する際の HTTP メソッドを表します。
② URIAPI 実行する際の URI を表します。
③ リクエストパラメータAPI 実行する際のリクエストパラメータを表します。
このうち「* required」と記載されたものは、必須パラメータです。
④ Try it outこちらを押下いただくと、APIドキュメント画面で API を実行できます。
その際には後述の「⑤ authorization」でトークン情報をご入力ください。
⑤ authorizationこちらを押下いただくと、authorization ダイアログが開きます。
トークン情報を入力いただくことで、API 実行が可能になります。

【注意】リクエストパラメータのName列が「router_id_list」となっている箇所は、curlコマンドによる入力に対応しておりません(APIドキュメント画面の ④Try it out ではエラーします)。python等での実行をお願いいたします。

API レスポンス

項目説明
① ステータスコードAPI 実行結果のステータスコードを表します。
② レスポンスボディAPI 実行結果の例を表します。
「Model」を押下いただくことで、各パラメータの説明をご確認いただけます。

認証ダイアログ

項目説明
① 認証情報入力欄「Bearer {トークン情報}」を入力し、「② Authorize」を押下いただくことで、
認証が完了します。
② Authorizeこちらが「Authorize」と記載されている場合は、未認証状態です。
こちらが「Logout」と入力されている場合は、認証情報が入力された状態です。

API 実行例、実行結果

項目説明
① Curl コマンド実行例Curl コマンドを使った場合の、API 実行コマンドを表します。
② API 実行結果「① Curl コマンド実行例」の実行結果を表します。

API実行例

ログイン

入力(curl):

curl -X 'POST' \
'https://f-rakunet.jp/api/v1/user-auth/login/token?client_id={テナントID}&uid={ユーザー名}&password={パスワードのMD5ハッシュ(*)}' \
-H 'accept: application/json' \
-d ''

* パスワードのMD5ハッシュは、「echo -n "パスワード" | md5sum」により確認できます。

出力:

 {
"clientType": "TENANT",
"clientName": "TestTenant", /// テナント名を出力
"serviceLevel": "BASIC", /// サービスレベルを出力
"mngdDeviceNum": 10, /// 契約台数を出力
"ztpDeviceNum": 10, /// ZTP契約機器数を出力
"unuseZtpPass": false,
"priviledge": 2,
"accessToken": "{トークン情報}" /// トークン情報を出力★以後トークン情報を利用して、情報取得や操作を行うことができます。
}

機器一覧を表示

入力(curl):

curl -X 'GET' \
'https://f-rakunet.jp/api/v1/tenants/{テナントID}/routers' \
-H 'accept: application/json' \
-H 'authorization: Bearer {トークン情報}'

出力:

{
"data": [
{
"routerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"deviceId": "",
"group": "", /// グループを出力
"frakuName": "F71-FNS", /// ホスト名を出力
"model": "F71", /// 機種を出力
"frakuLocation": "hiratsuka", /// 設置場所を出力
"presentVersion": "F71 Version 01.11(01)[0]00.00.0 [YYYY/MM/DD hh:mm]",
"serial": "xxxxxxxx", /// シリアル番号を出力
"endpoint_addr": "A.B.C.D", /// IPアドレスを出力
"name": "平塚1", /// 名前(Fらくねっとにて付与)
"status": "disconnected", /// ステータスを出力
"id": "xxxxxxxxxxxxxxxxxxxxxxxx",
"uptime": null, /// uptimeを出力
"signalLevel": null, /// モバイル電波強度を出力
"cpu0": null, /// CPU使用率を出力
"cpu1": null,
"cpu2": null,
"cpu3": null,
"cpu4": null,
"cpu5": null,
"cpu6": null,
"cpu7": null,
"memory": null, /// メモリ使用率を出力
"fan1Status": null, /// FANステータスを出力
"psu1Status": null, /// 電源の状態を出力
"psu2Status": null
},
{
"routerId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"deviceId": "",
"group": "",
"frakuName": "F71-FNS-CORE",
"model": "F71",
"frakuLocation": "hiratsuka",
"presentVersion": "F71 Version 01.11(01)[0]00.00.0 [YYYY/MM/DD hh:mm]",
"serial": "xxxxxxxx",
"endpoint_addr": "A.B.C.D",
"name": "",
"status": "connected",
"id": "xxxxxxxxxxxxxxxxxxxxxxxx",
"uptime": 35,
"signalLevel": null,
"cpu0": 47,
"cpu1": 1,
"cpu2": 1,
"cpu3": 1,
"cpu4": null,
"cpu5": null,
"cpu6": null,
"cpu7": null,
"memory": 55,
"fan1Status": "unknown",
"psu1Status": null,
"psu2Status": null
}
],
"total": 2, /// 登録機器数
"connected": 1 /// connected状態の機器数
}