Camera

Endpoints


Refresh camera thumbnail

GET/cameras/:cameraId/refreshThumbnail

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera to update configuration

Response

{
"status": "ok",
"message": "Updating camera thumbnail now"
}

Get alert rules of a camera

GET/cameras/:cameraId/alert_rules

Roles:

cameras:write

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera

Response

{
"status": "ok",
"data": [
{
"id": "6a80af1d-057e-46ea-afc6-69730da6d0c2",
"cameraId": "342e7b37-e368-4bea-9a5c-90a908361e83",
"severity": "HIGH",
"name": "FACE_MASK",
"dayRange": [
0,
5,
1,
6,
2,
3,
4
],
"timeRange": [
"2021-06-09T00:00:21.922Z",
"2021-06-09T23:59:21.922Z"
],
"emails": [],
"group": {
"id": "911b6ffa-1868-4789-86e6-efb1e7c1ba82",
"type": "GROUP",
"name": "FACE_MASK",
"children": [
{
"id": "47537ac5-5fbb-4e5b-9223-bfbf7a0422b8",
"type": "AREA",
"name": "Area 1",
"children": [
{
"id": "91ac549c-3825-4d62-bd87-107618b30d8f",
"type": "FACE_MASK"
}
],
"points": [
{
"x": 0,
"y": 0
},
{
"x": 0,
"y": 1
},
{
"x": 1,
"y": 1
},
{
"x": 1,
"y": 0
}
],
"color": "#389e0d"
}
],
"operator": "AND"
},
"phoneNumbers": [],
"observation": false,
"createdAt": "2021-06-09T14:27:21Z"
}
]
}

Define alert rules for camera

POST/cameras/:cameraId/alert_rules

Roles:

drawingboard:write

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera to update configuration
BODY
  • List[AlertRule] required

For alert rule definition please look at an example below:

[
{
"dayRange": [
0,
1,
2,
3,
4,
5,
6
],
"email": "[email protected]",
"group": {
"children": [
{
"children": [
{
"accuracy": "at-least",
"amount": 1,
"filters": [
{
"color": "blue",
"filter": "helmet"
}
],
"id": "ce237acd-f9ef-4582-829d-9f4cc7dfb7c0",
"type": "person"
}
],
"color": "#a0d911",
"id": "1add7a8a-971e-4a1a-8b55-cb37252deadf",
"name": "Area 1",
"points": [
{
"x": 500,
"y": 700
},
{
"x": 700,
"y": 700
},
{
"x": 700,
"y": 900
},
{
"x": 500,
"y": 900
}
],
"type": "area"
}
],
"id": "35d2f257-2b58-4704-8d8f-6e5c28bb0399",
"name": "Group 1",
"operator": "and",
"type": "group"
},
"id": "4ef4ac10-00d9-409d-b8a0-292b152aeb7f",
"name": "Detect person with blue helmets",
"severity": "critical",
"timeRange": [
"2019-11-13T02:07:43Z",
"2019-11-13T03:25:43Z"
]
}
]

Response

Returns a success message

{
"status": "ok",
"message": "Updated camera alert rules"
}

Validate camera

PUT/cameras/validate

Arguments

QUERY STRING PARAMETERS
  • facilityId UUID Id of the facility
BODY
  • id UUID required Id of the camera

Response

{
"status": "ok",
"message": "Camera State with id=${cameraId} Updated"
}

Update camera validation

POST/cameras/validate

Arguments

BODY
  • url String required Camera url

Response

{
"status": "ok",
"data": {
"codec_name": "hevc",
"width": 1920,
"height": 1080,
"display_aspect_ratio": "16:9",
"pix_fmt": "yuv420p",
"avg_frame_rate": 29.97002997,
"duration_ts": 0,
"duration": "",
"bit_rate": "N/A",
"nb_frames": 0
}
}

Get a temporary thumbnail from camera

PUT/cameras/temp_thumbnail

Roles:

cameras:write

Arguments

QUERY STRING PARAMETERS
  • facilityId UUID Id of the facility
BODY
  • url String required

Response

{
"status": "ok",
"data": {
"url": "https://intenseye.test/img.png"
}
}

Get cameras

GET/cameras

Arguments

No arguments needed

Response

Return list of camera objects

{
"status": "ok",
"data": [
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"statusMessage": "Message",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"createdAt": "2020-02-14T07:43:00Z",
"updatedAt": "2020-02-14T07:43:00Z",
"subscriptionId": 3,
"dataCollectionEnabled": true,
"dataCollectionObjects": [
"object",
"object2"
],
"dataCollectionConfig": {
"minWidth": 500,
"minHeight": 400,
"interval": 5000
},
"groundTruthKey": "keyName",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"collectSampleVideos": true,
"imageDimensions": {
"width": 500,
"height": 400
},
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"url": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"streamType": "proxy",
"streamProtocol": "rtsp",
"advancedSettings": {},
"proxyHost": "proxyHost"
}
]
}

Get camera statuses (Websocket)

GET/cameras/status

Arguments

QUERY STRING PARAMETERS
  • key String required Api key of the workspace

Response

Return list of camera statuses

{
"status": "ok",
"data": [
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"status": "IDLE",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png"
},
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"status": "IDLE",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png"
}
]
}

Get camera subscriptions

GET/cameras/subscriptions

Arguments

No arguments needed

Response

Return list of subscriptions

{
"status": "ok",
"data": [
{
"id": 99298870,
"subscriptionType": "retail",
"name": "sit sunt in magna",
"price": -84101653.54188934,
"config": {
"dwell": false,
"attention": true,
"heatmap": true,
"pose": true,
"pathway": true,
"dangerZone": true,
"ageGender": false,
"count": false,
"emotion": false
},
"planId": "tempor"
},
{
"id": 99298870,
"subscriptionType": "retail",
"name": "sit sunt in magna",
"price": -84101653.54188934,
"config": {
"dwell": false,
"attention": true,
"heatmap": true,
"pose": true,
"pathway": true,
"dangerZone": true,
"ageGender": false,
"count": false,
"emotion": false
},
"planId": "tempor"
}
]
}

Get camera with subscriptions

GET/cameras/:id

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera

Response

{
"status": "ok",
"data": {
"id": 99298870,
"subscriptionType": "retail",
"name": "sit sunt in magna",
"price": -84101653.54188934,
"config": {
"dwell": false,
"attention": true,
"heatmap": true,
"pose": true,
"pathway": true,
"dangerZone": true,
"ageGender": false,
"count": false,
"emotion": false
},
"camera": {
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"statusMessage": "Message",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"createdAt": "2020-02-14T07:43:00Z",
"updatedAt": "2020-02-14T07:43:00Z",
"subscriptionId": 3,
"dataCollectionEnabled": true,
"dataCollectionObjects": [
"object",
"object2"
],
"dataCollectionConfig": {
"minWidth": 500,
"minHeight": 400,
"interval": 5000
},
"groundTruthKey": "keyName",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"collectSampleVideos": true,
"imageDimensions": {
"width": 500,
"height": 400
},
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"url": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"streamType": "proxy",
"streamProtocol": "rtsp",
"advancedSettings": {},
"proxyHost": "proxyHost"
}
}
}

Get one subscriptions

GET/cameras/subscriptions/:subscriptionId

Arguments

PATH PARAMETER
  • subscriptionId UUID required The id of the subscription

Response

Return a subscription

{
"status": "ok",
"data": {
"id": 99298870,
"subscriptionType": "retail",
"name": "sit sunt in magna",
"price": -84101653.54188934,
"config": {
"dwell": false,
"attention": true,
"heatmap": true,
"pose": true,
"pathway": true,
"dangerZone": true,
"ageGender": false,
"count": false,
"emotion": false
},
"planId": "tempor"
}
}

Listen a camera state (Websocket)

GET/cameras/:cameraId/status

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera

Response

Return list of camera statuses

{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"status": "IDLE",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png"
}

Update camera state with a message

POST/cameras/:cameraId/status

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera
BODY
  • status String required Status of the camera
    • VALIDATING
    • UPLOADING
    • INPROGRESS
    • STARTED
    • DISCONNECTED
    • PREEMPTED
    • IDLE
    • PREPARING
    • ERROR
    • FINISHED
    • START_REQUESTED
    • END_REQUESTED
  • message String optional Message

Response

Returns a success message

{
"status": "ok",
"message": "Camera status Updated with message"
}

Update and get camera thumbnail

GET/cameras/:cameraId/thumbnail

Roles:

facilities:readcameras:write

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera
QUERY STRING PARAMETERS
  • facilityId UUID required Id of the facility

Response

Returns a success message

{
"status": "ok",
"data": {
"url": "https://intenseye.test/img.png"
}
}

Get videos of a camera

GET/cameras/:cameraId/videos

Roles:

videos:read

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera

Response

Returns a success message

{
"status": "ok",
"data": {
"video" : {
"id": "Bda543E5-e6ee-6DE9-a1a4-7Af6aA96e2A9",
"drawingState": "INPROGRESS",
"cameraId": "a775CD33-94Af-9ede-aCf1-5D4d9e49E09a",
"updatedAt": "1973-04-13T00:15:19.206Z",
"createdAt": "1948-03-16T17:11:17.339Z",
"metadata": {
"codec_name": "h264",
"width": 1920,
"height": 1080,
"display_aspect_ratio": "0:1",
"pix_fmt": "yuv420p",
"avg_frame_rate": 20,
"duration": "duration",
"duration_ts": 1614597114,
"bit_rate": "1",
"nb_frames": "10"
}
},
"lastAnalysis": {
"id": "bbbCaDDA-A99b-5eDD-457d-16139b2b78cE",
"updatedAt": "1989-07-04T09:45:51.179Z",
"cameraId": "8582Cfc6-72E5-bc1F-4FC7-9307dFbfDCf1",
"createdAt": "1978-06-04T01:02:57.162Z",
"state": "VALIDATING",
"configId": "ac36A5b4-AE74-eA6c-E6A1-667da4f9Db3A",
"endedAt": "1997-10-13T03:34:42.674Z",
"startedAt": "1986-03-20T15:37:21.62Z",
"videoId": "E7C0A3fa-44cD-c504-0d70-7fFB06BACEEA",
"isTest": true
}
}
}

Upload video

POST/cameras/videos/upload

Roles:

videos:write

Arguments

MULTIPART FORM UPLOAD
  • video binary required Binary video to upload
  • cameraId UUID required Camera id
  • cameraName UUID required Camera name
  • facilityId UUID required Facility id

Response

Returns a success message

{
"status": "ok",
"cameraId": "8582Cfc6-72E5-bc1F-4FC7-9307dFbfDCf1",
"videoId": "ac36A5b4-AE74-eA6c-E6A1-667da4f9Db3A"
}

Validate calibration

POST/cameras/:cameraId/validate_calibration

Roles:

drawingboard:write

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera
BODY
  • points List[Point] required List of points
    • Point Object
      • x Double required
      • y Double required
  • width Float required Width
  • height Float required Height

Response

Returns a calibration object

{
"pixelLength": 9284199.660315946,
"calibratedImage": "magna deserunt elit laboris ex",
"width": 198775.1256045997,
"cameraId": "fEd9AFe5-4a0E-0Dea-2C0B-EeE5473bF6Dd",
"homographyMatrix": [
-54349997.6738854,
79970219.50327688,
67357350.32924265,
-55243705.852384694
],
"croppedImage": "mollit aliqua ut elit",
"gridImage": "ut",
"height": -50513108.09607425,
"points": [
{
"x": -734130.8791192025,
"y": -89872637.19744365
}
],
"id": "d6FC6a70-494B-87FE-B0AE-A4aCdfd58389",
"updatedAt": "1995-02-27T19:10:06.628Z"
}

Update camera settings

POST/cameras/:cameraId/settings

Roles:

cameras:write

Arguments

PATH PARAMETER
  • cameraId UUID required The id of the camera
BODY
  • AD_general_thres Double
  • AD_long_bg_history_interval Double
  • AD_min_obj_size Double
  • AD_short_bg_history_interval Double
  • FD_conf_thres Double
  • FD_nms_thres Double
  • OD_apron_conf_thres Double
  • OD_apron_nms_thres Double
  • OD_facemask_roi_offset_x Int
  • OD_facemask_roi_offset_y Int
  • OD_hardhat_conf_thres Double
  • OD_hardhat_nms_thres Double
  • OD_mask_conf_thres Double
  • OD_mask_nms_thres Double
  • OD_person_conf_thres Double
  • OD_person_nms_thres Double
  • OD_reflectivevest_conf_thres Double
  • OD_reflectivevest_nms_thres Double
  • OD_vehicle_conf_thres Double
  • OD_vehicle_nms_thres Double
  • person_tracker_budget Int
  • person_tracker_iou_thres Double
  • person_tracker_kalman_position_scale Double
  • person_tracker_kalman_velocity_scale Double
  • person_tracker_matching_thres Double
  • person_tracker_max_age Int
  • person_tracker_max_hits Int
  • body_pose_nose_conf_thres Double
  • body_pose_leftEye_conf_thres Double
  • body_pose_rightEye_conf_thres Double
  • body_pose_leftEar_conf_thres Double
  • body_pose_rightEar_conf_thres Double
  • body_pose_leftShoulder_conf_thres Double
  • body_pose_rightShoulder_conf_thres Double
  • body_pose_leftElbow_conf_thres Double
  • body_pose_rightElbow_conf_thres Double
  • body_pose_leftWrist_conf_thres Double
  • body_pose_rightWrist_conf_thres Double
  • body_pose_leftHip_conf_thres Double
  • body_pose_rightHip_conf_thres Double
  • body_pose_leftKnee_conf_thres Double
  • body_pose_rightKnee_conf_thres Double
  • body_pose_leftAnkle_conf_thres Double
  • body_pose_rightAnkle_conf_thres Double
  • body_pose_leftHand_conf_thres Double
  • body_pose_rightHand_conf_thres Double
  • body_pose_leftForeArm_conf_thres Double
  • body_pose_rightForeArm_conf_thres Double

Response

Returns a success message

{
"status": "ok",
"message": "Updated camera settings"
}

Get camera in a facility

GET/facilities/:facilityId/cameras/:cameraId

Roles:

facilities:readcameras:read

Arguments

PATH PARAMETER
  • facilityId UUID required The id of the facility
  • cameraId UUID required The id of the camera

Response

Return a camera object

{
"status": "ok",
"data":
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"statusMessage": "Message",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"createdAt": "2020-02-14T07:43:00Z",
"updatedAt": "2020-02-14T07:43:00Z",
"subscriptionId": 3,
"dataCollectionEnabled": true,
"dataCollectionObjects": [
"object",
"object2"
],
"dataCollectionConfig": {
"minWidth": 500,
"minHeight": 400,
"interval": 5000
},
"groundTruthKey": "keyName",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"collectSampleVideos": true,
"imageDimensions": {
"width": 500,
"height": 400
},
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"url": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"streamType": "proxy",
"streamProtocol": "rtsp",
"advancedSettings": {},
"proxyHost": "proxyHost"
}
}

Update and get camera thumbnail

GET/facilities/:facilityId/cameras/:cameraId/thumbnail

Roles:

facilities:readcameras:write

Arguments

PATH PARAMETER
  • facilityId UUID required The id of the facility
  • cameraId UUID required The id of the camera

Response

Returns a success message

{
"status": "ok",
"data": {
"url": "https://intenseye.test/img.png"
}
}

Restart cameras

PUT/facilities/:facilityId/cameras/restart_analysis

Roles:

facilities:writecameras:write

Arguments

PATH PARAMETERS
  • facilityId UUID required The id of the facility

Returns

Returns a success message

{
"status": "ok",
"message": "Cameras are restarting"
}

Get cameras of a facility

GET/workspaces/facilities/:facilityId/cameras

Roles:

facilities:readcameras:read

Arguments

PATH PARAMETERS
  • :facilityId UUID required Id of the facility

Returns

Returns list of camera objects

{
"status": "ok",
"data": [
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"statusMessage": "Message",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"createdAt": "2020-02-14T07:43:00Z",
"updatedAt": "2020-02-14T07:43:00Z",
"subscriptionId": 3,
"dataCollectionEnabled": true,
"dataCollectionObjects": [
"object",
"object2"
],
"dataCollectionConfig": {
"minWidth": 500,
"minHeight": 400,
"interval": 5000
},
"groundTruthKey": "keyName",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"collectSampleVideos": true,
"imageDimensions": {
"width": 500,
"height": 400
},
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"url": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"streamType": "proxy",
"streamProtocol": "rtsp",
"advancedSettings" : {},
"proxyHost": "proxyHost"
},
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"statusMessage": "Message",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"createdAt": "2020-02-14T07:43:00Z",
"updatedAt": "2020-02-14T07:43:00Z",
"subscriptionId": 3,
"dataCollectionEnabled": true,
"dataCollectionObjects": [
"object",
"object2"
],
"dataCollectionConfig": {
"minWidth": 500,
"minHeight": 400,
"interval": 5000
},
"groundTruthKey": "keyName",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"collectSampleVideos": true,
"imageDimensions": {
"width": 500,
"height": 400
},
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"url": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"streamType": "proxy",
"streamProtocol": "rtsp",
"advancedSettings" : {},
"proxyHost": "proxyHost"
}
]
}

Get cameras of a facility

GET/maia/cameras

Roles:

maia:write

Arguments

No arguments needed

Returns

Returns list of camera objects

{
"status": "ok",
"data": [
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"statusMessage": "Message",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"createdAt": "2020-02-14T07:43:00Z",
"updatedAt": "2020-02-14T07:43:00Z",
"subscriptionId": 3,
"dataCollectionEnabled": true,
"dataCollectionObjects": [
"object",
"object2"
],
"dataCollectionConfig": {
"minWidth": 500,
"minHeight": 400,
"interval": 5000
},
"groundTruthKey": "keyName",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"collectSampleVideos": true,
"imageDimensions": {
"width": 500,
"height": 400
},
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"url": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"streamType": "proxy",
"streamProtocol": "rtsp",
"advancedSettings" : {},
"proxyHost": "proxyHost"
},
{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"statusMessage": "Message",
"imageLink": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"createdAt": "2020-02-14T07:43:00Z",
"updatedAt": "2020-02-14T07:43:00Z",
"subscriptionId": 3,
"dataCollectionEnabled": true,
"dataCollectionObjects": [
"object",
"object2"
],
"dataCollectionConfig": {
"minWidth": 500,
"minHeight": 400,
"interval": 5000
},
"groundTruthKey": "keyName",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"collectSampleVideos": true,
"imageDimensions": {
"width": 500,
"height": 400
},
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"url": "https://blog.intenseye.com/content/images/size/w2000/2019/11/blog-post---1-1.png",
"streamType": "proxy",
"streamProtocol": "rtsp",
"advancedSettings" : {},
"proxyHost": "proxyHost"
}
]
}

Analyze

PUT/facilities/:facilityId/cameras/:cameraId/analysis

Roles:

facilities:read

Arguments

PATH PARAMETERS
  • facilityId UUID required The id of the facility
  • :cameraId UUID required Id of the camera

Returns

Returns a success message

{
"status": "ok",
"message": "Camera is being prepared for analyzing ${jobId}"
}

Cancel camera analyze

DELETE/facilities/:facilityId/cameras/:cameraId/analysis

Roles:

facilities:read

Arguments

PATH PARAMETERS
  • facilityId UUID required The id of the facility
  • :cameraId UUID required Id of the camera

Returns

Returns a success message

{
"status": "ok",
"message": "Camera stopped"
}

Get camera calibration of a camera

GET/cameras/:cameraId/calibration

Roles:

drawingboard:write

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera

Returns

{
"pixelLength": 9284199.660315946,
"calibratedImage": "magna deserunt elit laboris ex",
"width": 198775.1256045997,
"cameraId": "fEd9AFe5-4a0E-0Dea-2C0B-EeE5473bF6Dd",
"homographyMatrix": [
-54349997.6738854,
79970219.50327688,
67357350.32924265,
-55243705.852384694
],
"croppedImage": "mollit aliqua ut elit",
"gridImage": "ut",
"height": -50513108.09607425,
"points": [
{
"x": -734130.8791192025,
"y": -89872637.19744365
}
],
"id": "d6FC6a70-494B-87FE-B0AE-A4aCdfd58389",
"updatedAt": "1995-02-27T19:10:06.628Z"
}

Save camera calibration of a camera

POST/cameras/:cameraId/calibration

Roles:

drawingboard:write

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera
BODY
  • id UUID Name of the
  • cameraId UUID required id of the camera
  • points List[Points] required List of points
    • Point Object
      • x Double required
      • y Double required
  • width Double required Width
  • height Double required Height
  • calibratedImage String required Calibrated Image
  • croppedImage String required Cropped Image
  • homographyMatrix List[Double] required
  • pixelLength Double required Length of the pixel
  • updatedAt String Update date

Returns

{
"status": "ok",
"message": "Saved camera calibration"
}

Delete camera calibration of a camera

DELETE/cameras/:cameraId/calibration

Roles:

drawingboard:write

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera

Returns

{
"status": "ok",
"message": "Deleted camera calibration"
}

Toggle bookmark for alert by alert id

An alert can be bookmarked and it can be filtered among bookmarked alerts.

PUT/cameras/:cameraId/alerts/:alertId/bookmark

Roles:

alerts:write

Arguments

PATH PARAMETERS
  • :cameraId required Id of the camera
  • :alertId required Id of the alert

Returns

{
"status": "ok",
"message": "Alert bookmark updated"
}

Get pathways of a camera

GET/cameras/:cameraId/pathways

Roles:

cameras:read

Arguments

PATH PARAMETERS
  • :cameraId required Id of the camera
QUERY STRING PARAMETERS
  • start Long required Start of the timestamp
  • end Long required End of the timestamp

Returns

{
"status": "ok",
"data": [
[
[
1203,
637
],
[
1202,
636
],
[
1202,
635
]
],
[
[
1539,
751
],
[
1500,
765
]
],
[
[
1444,
442
],
[
1392,
437
],
[
1294,
444
],
[
1169,
522
],
[
1168,
519
],
[
1169,
519
]
]
]
}