WV-ASA100 WebAPI (v1)

概要

WV-ASA100のWEB APIの仕様書です。

WV-ASA100に保存されている画像やアラームの検索、照合リストの設定や統計情報を取得することができます。

ご利用にあたって

本仕様書は、当社製品をご購入いただいたお客様で、APIの基本知識を有した方向けに、当該該当製品のAPIコマンドについて説明するための資料であり、当社からお客様にご提供できる情報の全てです。

当社は、本仕様書に記載している具体的なコマンドやサンプルプログラムの内容等については、サポートを提供しておりませんのであらかじめご了承ください。

また本仕様書を用いての、お客様における運用やご利用などにつきましては、当社は一切の責任を負いかねます。

不明点などある場合は必ず販売会社にご相談の上行っていただくようにお願いします。

本仕様書の内容および仕様は予告無く変更することがありますがご了承ください。

HTTP共通定義

HTTPバージョン

HTTP /1.1

Request Header

リクエストヘッダー

No. HTTP Header Value
Content-Type application/json; charset=UTF-8
Connection Close
Content-Length Send data size

Response Header

クライアントからのHTTPリクエストを受付けた場合、アプリケーションが応答出来ない場合を除いて、 HTTPステータスコードは全て「200」が設定されます。

その他の一般的なHTTP通信エラーについては、「404」「403」などのステータスコードが返却されます。 その場合、本APIで定義するResponse bodyは返却されません。

Content-Body

Request

JSON形式で送信します。画像データを必要とするAPIの場合、画像データはBASE64形式にてエンコードする必要があります。

Response

応答は、HTTPステータスコードとJSON形式の本文で返却されます。 画像データが含まれる場合、BASE64形式にてエンコードされたデータが返却されます。

応答例

  {
    "status_body":
    {
        "status":true,
        "details": [
          {
            "srv_id":"9999",
            "code":"00000",
            "message":"OK"
          }         
        ]
    },
    "result_body":
    {
        *Depends on API
    }
  }

details 内の code 値に「00000」または「00001」が設定されている場合は status は true となります。

status が true の場合、詳細な応答情報が result_body に設定されます。 status が false の場合は、 result_body は設定されません。

details 内の srv_id は9999(固定)です。

Authentication

クライアントとWV-ASA100の間の認証にはDigest認証を使用します。

SSL Communication

WV-ASA100の設定を行うことでHTTPS通信が可能となります。通信プロトコルはTLS1.2のみ対応しています。

WV-ASA100インストール時はサーバー証明書には自己署名証明書が設定されます。

クライアントで証明書検証を行う場合、パブリックCAにより発行された証明書に置き換えていただくことを推奨します。

License

本ドキュメントはReDocを使用して生成されています。

About License

機器情報

システム情報取得

使用可能なAI機能は、カメラにインストールされている機能拡張ソフトウェアによって変わります。
本APIにより、ベストショット画像検索、アラーム履歴検索、統計情報それぞれ使用可能なAI機能の情報を取得することできます。

Responses

Response samples

Content type
application/json
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    },
  • "result_body": {
    • "multi_ai_soft_version": "1.3.2.4",
    • "bestshot_type_list": [
      • {
        • "section": "face",
        • "server_type": "local",
        • "search_item": [
          • "date&time",
          • "cameras"
          ]
        },
      • {
        • "section": "people",
        • "server_type": "local",
        • "search_item": [
          • "date&time",
          • "cameras",
          • "attribute",
          • "similarity"
          ]
        },
      • {
        • "section": "vehicle",
        • "server_type": "local",
        • "search_item": [
          • "date&time",
          • "cameras",
          • "attribute",
          • "similarity"
          ]
        }
      ],
    • "alarm_type_list": [
      • {
        • "section": "face",
        • "alarm_type": "(registered category)"
        },
      • {
        • "section": "people",
        • "alarm_type": "listed-alarm"
        },
      • {
        • "section": "sound",
        • "alarm_type": [
          • "gunshot",
          • "glass break",
          • "vehicle horn",
          • "yell",
          • "audio detection"
          ]
        },
      • {
        • "section": "aivmd",
        • "alarm_type": [
          • "intruder detection",
          • "loitering detection",
          • "cross line detection",
          • "direction detection"
          ]
        },
      • {
        • "section": "peopleCount",
        • "alarm_type": [
          • "occupancy"
          ]
        }
      ]
    }
}

カメラ情報取得

クライアントはそれぞれのカメラのAI機能とカメラIDを取得することができます。カメラIDは多くのAPIを使用するために必要です。

Responses

Response samples

Content type
application/json
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    },
  • "result_body": {
    • "system_type_list": [
      • {
        • "system_type": "multi-AI",
        • "srv_id_list": [
          • {
            • "srv_id": "9999",
            • "cameras": [
              • {
                • "camera_id": "1557187868",
                • "camera_ip": "192.168.0.10",
                • "camera_model": "WV-X2571L",
                • "camera_name": "入り口カメラ",
                • "ai_capability": [
                  • "face",
                  • "people",
                  • "sound"
                  ],
                • "is_enabled": "true"
                },
              • {
                • "camera_id": "1826478927",
                • "camera_ip": "192.168.0.11",
                • "camera_model": "WV-S2136",
                • "camera_name": "Parking lot",
                • "ai_capability": [
                  • "vehicle",
                  • "aivmd"
                  ],
                • "is_enabled": "true"
                },
              • {
                • "camera_id": "923264335",
                • "camera_ip": "192.168.0.12",
                • "camera_model": "WV-S4156",
                • "camera_name": "Exit",
                • "ai_capability": [
                  • "aivmd",
                  • "peopleCount"
                  ],
                • "is_enabled": "true"
                }
              ]
            }
          ]
        }
      ]
    }
}

ベストショット画像

WV-ASA100に保存されている顔ベストショット画像、人物ベストショット画像、車両ベストショット画像を取得します。
クライアントは最初に検索開始のAPIで検索条件を指定し、検索セッションIDを取得します。

次に検索セッションIDを使用して検索結果の概要取得のAPIを送信します。
各検索結果画像の時刻情報とベストショット画像データを取得するための画像のキーを取得します。

最後にそれぞれの画像のキーに対して、ベストショット画像取得のAPIを送信して、画像データを取得します。

検索開始

クライアントは検索条件を指定し、検索セッションIDを取得します。
顔画像、人物画像、車両画像を同時に指定することも可能です。

Request Body schema: application/json
Any of
required
object

顔画像検索条件
search_thumbnail_1とmatching_list_idは排他です。どちらも未指定の場合は、指定した日時、カメラに対する全ての顔画像が検索されます。

date_from
required
string <YYYY-MM-DD hh:mm:ss>

開始日時 (*UTC)

date_to
required
string <YYYY-MM-DD hh:mm:ss>

終了日時 (*UTC)

object

ソートの指定

Responses

Request samples

Content type
application/json
Example
{
  • "section_face": {
    • "similarity": "50",
    • "cameras": [
      • {
        • "srv_id": "9999",
        • "camera_id": "1557187868"
        }
      ],
    • "matching_list_id": "7d6b8ce8-e51c-41bf-a382-f29e818f10b8"
    },
  • "date_from": "2022-01-01 01:00:00",
  • "date_to": "2022-01-10 23:59:59",
  • "sort": {
    • "sort-item": "shot-date-time",
    • "asc-desc": "desc"
    }
}

Response samples

Content type
application/json
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    },
  • "result_body": {
    • "search_session_id": "1620151537"
    }
}

検索結果の概要取得

指定した検索セッションIDに対する検索結果の総数、時刻情報、及び画像データを取得するための画像のキーを本APIで取得します。
すべての検索結果ではなく、指定した件数の情報のみ取得することも可能です。

path Parameters
search_session_id
required
string
Example: 1620151537

検索セッションID

query Parameters
result-from
integer
Example: result-from=1

検索結果の取得開始番号
※省略した場合は最初の番号から取得する。

result-count
integer
Example: result-count=100

最大取得数
※省略した場合は全ての結果を取得する。

Responses

Response samples

Content type
application/json
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    },
  • "result_body": {
    • "search_session_id": "1620151537",
    • "result_count": "200",
    • "search_result": [
      • {
        • "shot_date_time": "2022-01-01 00:00:00.000",
        • "camera_id": "1557187868",
        • "system_type": "multi-AI",
        • "srv_id": "9999",
        • "source_type": "face",
        • "degree_of_similarity": "74",
        • "thumbnail_key": "SearchThumbnail\\\\multi-AI\\\\9999\\\\1557187868\\\\2022\\\\01\\\\01\\\\000000000_3D24F100A42311EC89B21557187868.jpg"
        },
      • {
        • "shot_date_time": "2022-01-01 00:00:30.000",
        • "camera_id": "1557187868",
        • "system_type": "multi-AI",
        • "srv_id": "9999",
        • "source_type": "face",
        • "degree_of_similarity": "56",
        • "thumbnail_key": "SearchThumbnail\\\\multi-AI\\\\9999\\\\1557187868\\\\2022\\\\01\\\\01\\\\000030000_4F102100A42311EC89B21557147321.jpg"
        }
      ]
    }
}

ベストショット画像取得

指定した画像のキーに対する画像データを取得することができます。
'info=on'がクエリに指定された場合、解析された属性のスコア情報など詳細な情報を取得することできます。

query Parameters
thumbnail-key
required
string
Example: thumbnail-key=SearchThumbnail\\multi-AI\\9999\\0800233F3549\\2022\\03\\C15\\144618780_3D24F100A42311EC89B20800233F3549.jpg

ベストショット画像のキー

info
string
Example: info=on

onを指定した場合、解析された属性のスコア情報を返却します

Responses

Response samples

Content type
application/json
Example
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    },
  • "result_body": {
    • "thumbnail_image": "(Base64 encoded image)",
    • "recommended_size": [
      • {
        • "recommended": "no",
        • "detect_pixel_width": "198",
        • "detect_pixel_height": "198"
        }
      ]
    }
}

検索中止

path Parameters
search_session_id
required
string
Example: 1620151537

検索セッションID

Responses

Response samples

Content type
application/json
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    }
}

アラーム履歴

検索開始

登録顔検知、登録人物検知、音検知、AI動体検知、AI混雑検知のアラーム履歴を検索することができます。
クライアントは検索条件を指定し、検索セッションIDを取得します。
複数のアラーム種別を同時に指定することも可能です。

Request Body schema: application/json
Any of
required
object

顔照合アラームの検索

date_from
required
string <YYYY-MM-DD hh:mm:ss>

検索開始日時 (*UTC)

date_to
required
string <YYYY-MM-DD hh:mm:ss>

検索終了日時 (*UTC)

object

Responses

Request samples

Content type
application/json
Example
{
  • "section_face": {
    • "alarm_type": "listed-alarm",
    • "matching_list_id": "7d6b8ce8-e51c-41bf-a382-f29e818f10b8",
    • "cameras": [
      • {
        • "srv_id": "9999",
        • "camera_id": "1557187868"
        }
      ]
    },
  • "date_from": "2022-01-01 00:00:00",
  • "date_to": "2022-01-01 23:59:59",
  • "sort": {
    • "sort-item": "shot-date-time",
    • "asc-desc": "desc"
    }
}

Response samples

Content type
application/json
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    },
  • "result_body": {
    • "search_session_id": "1620151537"
    }
}

検索結果取得

指定した検索セッションIDに対する検索結果の総数、アラームの時刻情報、及びアラーム発生時の検知画像データを取得するための画像のキーを本APIで取得します。
すべての検索結果ではなく、指定した件数の情報のみ取得することも可能です。

path Parameters
search_session_id
required
string
Example: 1620151537

検索セッションID

query Parameters
result-from
integer
Example: result-from=1

検索結果の取得開始番号
※省略した場合は最初の番号から取得する。

result-count
integer
Example: result-count=100

最大取得数
※省略した場合は全ての結果を取得する。

Responses

Response samples

Content type
application/json
Example
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    },
  • "result_body": {
    • "search_session_id": "1620151537",
    • "result_count": "1",
    • "search_result": [
      • {
        • "alarm_date_time": "2022-01-01 01:00:00.000",
        • "system_type": "multi-AI",
        • "srv_id": 9999,
        • "camera_id": "1557187868",
        • "alarm_type": "listed-alarm",
        • "alarm_name": "Registered face detection",
        • "matching_list_id": "beae611e-8825-4ae5-a93f-f6c34c356102",
        • "degree_of_similarity": "96",
        • "detected_thumbnail": "SearchAlarm\\\\multi-AI\\\\9999\\\\1557187868\\\\2022\\\\01\\\\01\\\\010000000_received.jpg",
        • "registered_thumbnail": "SearchAlarm\\\\multi-AI\\\\9999\\\\1557187868\\\\2022\\\\01\\\\01\\\\010000000_registered.jpg",
        • "category": "Student"
        }
      ]
    }
}

検索中止

path Parameters
search_session_id
required
string
Example: 1620151537

検索セッションID

Responses

Response samples

Content type
application/json
{
  • "status_body": {
    • "status": true,
    • "details": [
      • {
        • "srv_id": "9999",
        • "code": "00000",
        • "message": "OK"
        }
      ]
    }
}

照合リスト

一覧取得

WV-ASA100に登録されている登録顔、及び登録人物の情報の取得を行います。

Request Body schema: application/json
One of