v1

latestOpenAPI 3.0.32026-07-24214879985.1 KB
Users

This endpoint allows the users to retrieve info about a specific user based on the user ID.

get/users/{userId}

Query parameters

includestring[]

Response

OK

idstring required
createTimestampstring date-time
firstNamestring required
lastNamestring required
emailstring email required

This email is used for login.

accountIdstring required
locationIdstring nullable

ID Of the location.

languagestring required
employeeIdstring nullable required

Custom text field

schemaUserSchema

Optional "include" that returns a JSON Schema Draft 4 object describing this resource. Enables clients to determine allowed interactions dynamically (e.g., whether a field can be updated), even if the general OpenAPI spec permits more. Useful for context-specific capability enforcement.

Example response

{
  "createTimestamp": "2023-04-04T09:38:37.372Z",
  "locationId": "2428fda3-389f-48ce-b062-85875dd6b2e2",
  "loginDetails": {
    "lastLogin": "2023-04-04T09:38:37.372Z"
  },
  "timeZone": {
    "name": "America/New_York"
  },
  "support": {
    "pin": "000000"
  },
  "schema": {
    "$schema": "http://json-schema.org/draft-04/schema",
    "type": "object",
    "properties": {
      "firstName": {
        "type": "string",
        "minLength": 1,
        "maxLength": 126,
        "readOnly": true
      },
      "lastName": {
        "type": "string",
        "minLength": 1,
        "maxLength": 126,
        "readOnly": true
      },
      "email": {
        "type": "string",
        "description": "This email is used for login.",
        "format": "email",
        "readOnly": true
      },
      "locationId": {
        "description": "ID Of the location.",
        "minLength": 1,
        "type": "string",
        "nullable": true,
        "example": "2428fda3-389f-48ce-b062-85875dd6b2e2",
        "readOnly": false
      },
      "status": {
        "type": "string",
        "readOnly": true,
        "description": "User can be enabled if set to \"active\" and disabled if set to \"blocked\"",
        "enum": [
          "active",
          "blocked"
        ]
      },
      "loginSchedule": {
        "type": "object",
        "description": "It signifies a week long alert schedule. This schedule is effective according to actor's (user/camera/account) timezone. It allows setting different times for different days.\n",
        "readOnly": false,
        "properties": {
          "sunday": {
            "type": "array",
            "items": {
              "properties": {
                "start": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "Starting point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for a day"
                },
                "end": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "End point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for the day"
                }
              }
            }
          },
          "monday": {
            "type": "array",
            "items": {
              "properties": {
                "start": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "Starting point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for a day"
                },
                "end": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "End point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for the day"
                }
              }
            }
          },
          "tuesday": {
            "type": "array",
            "items": {
              "properties": {
                "start": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "Starting point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for a day"
                },
                "end": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "End point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for the day"
                }
              }
            }
          },
          "wednesday": {
            "type": "array",
            "items": {
              "properties": {
                "start": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "Starting point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for a day"
                },
                "end": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "End point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for the day"
                }
              }
            }
          },
          "thursday": {
            "type": "array",
            "items": {
              "properties": {
                "start": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "Starting point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for a day"
                },
                "end": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "End point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for the day"
                }
              }
            }
          },
          "friday": {
            "type": "array",
            "items": {
              "properties": {
                "start": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "Starting point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for a day"
                },
                "end": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "End point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for the day"
                }
              }
            }
          },
          "saturday": {
            "type": "array",
            "items": {
              "properties": {
                "start": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "Starting point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for a day"
                },
                "end": {
                  "type": "string",
                  "readOnly": false,
                  "pattern": "^(0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$",
                  "description": "End point of the interval. It should be in the range of 00:00 to 23:59 since this is the range for the day"
                }
              }
            }
          }
        }
      },
      "permissions": {
        "x-jsoninclude-nonnull-annotation": true,
        "type": "object",
        "readOnly": true,
        "properties": {
          "administrator": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "All permissions are enabled - create, delete, edit, and view access to all accounts and user settings, bridges, cameras, layouts, audit log and archive.\n"
          },
          "editAccounts": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit Control, Days, Security, Camera, Alerts, Notifications, Privacy, Sharing, Responders, Default retentions, and camera resolution settings.\n"
          },
          "layoutAdministrator": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Create, delete and edit any accessible layouts. All user layouts are visible to admin users.\n"
          },
          "createLayouts": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Ability to create layouts and edit the layouts created. This does not grant permission to edit layouts created by other users.\n"
          },
          "editNoBillingDeviceSettings": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit Camera Settings except for Cloud Retention and Full Video Resolution. Cannot add or delete cameras. Edit existing Analytics. Cannot add or delete Analytics.\n"
          },
          "turnCamerasOnOff": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Turn Cameras on/off. Cameras off cannot be recorded."
          },
          "editMotionAreas": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit Motion Settings. Set object size and sensitivity, add/delete regions, add/delete alerts for regions. Edit existing Analytics. Set object size and sensitivity, add/delete alerts.\n"
          },
          "editAllCameraSettings": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Editing all Camera Settings. Cannot add or delete cameras."
          },
          "editUsers": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Create, delete and edit non-admin users in an end user account."
          },
          "upgradeEdition": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Upgrade current edition subscription to a higher level edition."
          },
          "addEditBridgesCameras": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Create, delete, edit, and view Bridges and Cameras. This is the only permission for a non-admin to be able to add and view bridges in an end user account.\n"
          },
          "editSharing": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit Sharing and Responders settings."
          },
          "controlPTZ": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Control Pan, Tilt, Zoom, & recall stations while viewing a preview or live video of PTZ cameras.\n"
          },
          "editPTZStations": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit PTZ Settings. Set PTZ mode and create, delete, edit stations.\n"
          },
          "addEditSpeakers": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Add speakers, edit speaker settings, delete speakers."
          },
          "editSpeakers": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit speaker settings. Cannot add or delete speakers."
          },
          "viewLiveVideo": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View full resolution video live."
          },
          "viewHistoricVideo": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View history browser and historic video."
          },
          "downloadVideo": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Download preview and full resolution video."
          },
          "viewPreviewVideo": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View preview images from cameras."
          },
          "talkDown": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Allows the users to initiate Talk Down to the camera field(s) of view."
          },
          "editMap": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Add and edit floors, lines, shapes, and cameras on the map."
          },
          "viewAuditLog": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View Audit Log and download reports from it."
          },
          "viewArchive": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View all files and folders within the Archive."
          },
          "editArchive": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Save videos to Archive - delete, edit, and view files and folders within the Archive."
          },
          "viewPlugins": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View all Plugins."
          },
          "editPlugins": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Add and remove plugins."
          },
          "exportUsers": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Export a list of account users in .csv format."
          },
          "viewVSP": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "User access to view vehicle data, search vehicle across camera & location, set rules, and alert."
          },
          "editResellerUsers": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Create, delete and edit reseller user who is not an Admin."
          },
          "editAdminUsers": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Create, delete and edit admin and non-admin users in an end user account. Give access to bridges, cameras, and layouts. Create new end user accounts and give access to them.\n"
          },
          "viewContract": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View recordings, search, and create new recordings."
          },
          "addRemovePayment": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Add and remove payment methods."
          },
          "viewInvoice": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View and download invoices."
          },
          "placeOrders": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Add products to the shopping cart and place orders."
          },
          "viewShipments": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View the status of shipments."
          },
          "viewPricingInformation": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View pricing information."
          },
          "viewResellerProgramInformation": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View Marketing's reseller program information."
          },
          "viewVSPRule": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View VSP rules."
          },
          "editVSPRule": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit VSP rules."
          },
          "viewVehicleList": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View vehicle lists."
          },
          "editVehicleList": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit vehicle lists."
          },
          "viewAutomations": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View automation alerts, rules, and actions."
          },
          "editAutomations": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit automation alerts, rules, and actions."
          },
          "editAlertManagerRulesAndActions": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "Edit Automations rules and actions."
          },
          "viewAlertManagerRulesAndActions": {
            "type": "boolean",
            "readOnly": true,
            "x-jsoninclude-nonnull-annotation": true,
            "description": "View Alert Manager rules and actions."
          }
        }
      },
      "employeeId": {
        "nullable": true,
        "type": "string",
        "description": "Custom text field",
        "maxLength": 50,
        "readOnly": false
      }
    }
  }
}