共通規約
レスポンス形式
読み取りエンドポイント
読み取りエンドポイント(GET)は通常、code フィールドを含めずに、ビジネスデータオブジェクトをそのまま返します。例:
{
"sSerialNumber": "RC1126B-20240101-001",
"sFirmwareVersion": "V1.0.10"
}
操作エンドポイント
操作エンドポイント(POST、PUT、DELETE)は、code と message を含むオブジェクトを返します:
{
"code": 0,
"message": "success"
}
code=0 は成功を意味します。0 以外の code はエラーを示し、message に説明が含まれます。
エラーレスポンス
リクエストが失敗した場合、デバイスは次のように返します:
{
"code": 401,
"message": "Unauthorized: Invalid token or NO token provided"
}
フィールド命名
JSON フィールド名にはキャメルケースを使用します。先頭の文字はデータ型を表します:
| プレフィックス | 型 | 例 |
|---|---|---|
i | 整数 | iCpuUsage |
f | 浮動小数点数 | fTemperature |
s | 文字列 | sSerialNumber |
b | ブール値 | bRunning |
l | リスト | lDetection |
d | オブジェクト | dIpv4 |
URL 構成
CGI エンドポイント
ほとんどのエンドポイントは、CGI ベースパスを必要とします:
http://<DEVICE_IP>/cgi-bin/entry.cgi/<API_PATH>
直接パスのエンドポイント
一部のエンドポイントは CGI レイヤーを経由せず、直接アクセスされます:
http://<DEVICE_IP>/api/v1/device/serial-port
http://<DEVICE_IP>/api/v1/file?path=/mnt/sdcard/test.mp4
認証
一部の例外(/system/key、/system/login、/system/check)を除き、すべてのエンドポイントはリクエストヘッダーに Token を含める必要があります:
Cookie: token=<JWT_TOKEN>
Token の取得方法については、Authentication を参照してください。
エラーコード
エラーコードは機能モジュールごとに区分されています:
| プレフィックス | モジュール |
|---|---|
100xx | デバイス & システム |
200xx | ライブビュー |
300xx | 録画 |
400xx | AI 推論 |
500xx | ターミナル & ログ |
一般的なエラーコード:
| コード | 説明 |
|---|---|
10001 | パスワードが弱すぎます |
10002 | Token の有効期限が切れています |
10003 | ファームウェアのダウンロードがすでに進行中です |
10004 | ポート番号が範囲外です |
10005 | ポート番号はすでに使用されています |
全リストについては、Error Codes を参照してください。
技術サポートと製品ディスカッション
弊社製品をお選びいただきありがとうございます。私たちは、製品をできるだけスムーズにご利用いただけるよう、さまざまなサポートを提供しています。お好みやニーズに応じて選べる複数のコミュニケーションチャネルをご用意しています。