Cameras

Camera object

{
"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"
}

Endpoints


Get cameras in the workspace

GET/cameras

Arguments

No arguments needed

Returns

Returns a camera object for the account that was authenticated in the request.


Get a camera's information

GET/cameras/:cameraId

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera to retrieve

Returns

Returns a camera object

{
"id": "8b084a37-6fd4-4c1b-beea-ea403917791b",
"name": "My Camera",
"status": "IDLE",
"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",
"facilityId": "3a85f898-c173-4a5a-8e4b-1884ffcace8b",
"alertRuleIds": [
"9a12w142-c173-4a5a-8e4b-1884ffcace8b"
],
"streamType": "proxy",
"streamProtocol": "rtsp",
"metadata": {
"codec_name": "h264",
"width": 1920,
"height": 1080,
"display_aspect_ratio": "0:1",
"pix_fmt": "yuv420p",
"avg_frame_rate": 20,
"bit_rate": "1",
"nb_frames": "10"
}
}

Update a camera's information

PATCH/cameras/:cameraId

Roles:

cameras:write

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera to update
BODY
  • name String optional Name of the camera
  • url String optional URL of the camera
  • emailAddresses List of Strings optional Email addresses of the camera
  • imageDimensions Object optional
    • width Double required Width of image
    • height Double required Height of image
  • streamType Enum optional
    • direct
    • proxy
    • muxxproxy
    • wowza
    • vpn
    • client Stream type of the camera
  • streamProtocol Enum optional
    • rtsp
    • rtmp
    • rtmps
    • hls Stream protocol of the camera

Returns

Returns a success message

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

Delete a camera

DELETE/cameras/:cameraId

Roles:

cameras:write

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera to delete

Returns

Returns a success message

{
"status": "ok",
"message": "Camera deleted successfully"
}

Set thumbnail to a camera

POST/cameras/thumbnail/:requestId

Arguments

PATH PARAMETERS
  • :requestId UUID required Request id
BODY
  • url String required URL of the thumbnail

Returns

Returns a success message

{
"status": "ok",
"message": "OK"
}

Set metadata to a camera

POST/cameras/metadata/:requestId

Arguments

PATH PARAMETERS
  • :requestId UUID required Request id
BODY
  • codec_name String optional Codec name of the camera
  • width String required Width of the camera
  • height String required Height of the camera
  • display_aspect_ratio String optional Display aspect ratio of the camera
  • pix_fmt String optional
  • avg_frame_rate String optional Average frame rate of the camera
  • duration_ts Int optional
  • duration String optional Duration of the camera
  • bit_rate String optional Bit rate of the camera
  • nb_frames String optional

Returns

Returns a success message

{
"status": "ok",
"message": "OK"
}

Set ffserver error to camera

POST/cameras/ffserver/error/:requestId

Arguments

PATH PARAMETERS
  • :requestId UUID required Request id
BODY
  • operation String required
  • error String required Error message

Returns

Returns a success message

{
"status": "ok",
"message": "OK"
}

Get camera calibration of a camera

GET/cameras/:cameraId/calibration

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera

Returns

Returns 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"
}

Get camera analysis job

GET/cameras/:cameraId/analysis_jobs

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera

Returns

Returns list of camera analyze job objects

{
"status": "ok",
"data": [
{
"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
},
{
"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
}
]
}

Get camera analysis job with job id

GET/cameras/:cameraId/analysis_jobs/:jobId

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera
  • :jobId UUID required Id of the camera analyse job

Returns

Returns camera analyze job object

{
"status": "ok",
"data": {
"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
}
}

Get cameras of a facility

GET/facilities/:facilityId/cameras

Roles:

facilities: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"
}
]
}

Add a camera to a facility

POST/facilities/:facilityId/cameras

Arguments

PATH PARAMETERS
  • :facilityId UUID required Id of the facility
BODY
  • name String required Name of the camera
  • url String required URL of the camera
  • streamType Object required Stream type of the camera

Returns

Returns a success message

{
"status": "ok",
"insertedItem": "9a12w142-c173-4a5a-8e4b-1884ffcace8b"
}

Add a camera for client

POST/facilities/:facilityId/client_cameras

Arguments

PATH PARAMETERS
  • :facilityId UUID required Id of the facility
MULTIPART FORM UPLOAD
  • cameraImage binary required Binary Image to upload
  • cameraName binary required Camera name
  • metadata binary required Metadata of camera

Returns

Returns a success message

{
"status": "ok",
"message": "Camera added successfully",
"insertedItem": "9a12w142-c173-4a5a-8e4b-1884ffcace8b"
}

Get alert rules of a camera

GET/cameras/:cameraId/alert_rules

Arguments

PATH PARAMETERS
  • :cameraId UUID required Id of the camera

Returns

Returns a list of alert rules

{
"status": "ok",
"data": [
{
"id": "dac532f8-f861-4c01-b46f-ae244b61991c",
"cameraId": "d546dfc7-ec4f-4f22-84a8-de522d83a65a",
"severity": "MEDIUM",
"name": "STATIC_DELIMITATION_AREA",
"dayRange": [
0,
5,
1,
6,
2,
3,
4
],
"timeRange": [
"2020-08-07T00:00:00Z",
"2020-08-08T00:00:00Z"
],
"emails": [
],
"group": {
"id": "4121e98f-3000-44b3-b5dd-8f5f35ee6e49",
"type": "GROUP",
"name": "STATIC_DELIMITATION_AREA",
"children": [
{
"id": "60501143-08d4-45e5-a670-9bccd045ca09",
"type": "AREA",
"name": "Area 1",
"children": [
{
"id": "3864d061-f32a-497e-866e-4a7e5993d24f",
"type": "STATIC_DELIMITATION_AREA",
"objects": [
"PERSON"
]
}
],
"points": [
{
"x": 1897,
"y": 917
},
{
"x": 969,
"y": 287
},
{
"x": 1062,
"y": 259
},
{
"x": 1915,
"y": 735
}
],
"color": "#faad14"
}
],
"operator": "AND"
},
"pretty": "AND(ARStaticDelimitationArea: Objects(PERSON))",
"phoneNumbers": [],
"observation": false
}
]
}