Notifications
Get Notifications
Query notifications is used to get a list of notifications sent from the system.
notifications(filters: NotificationFilter
order: NotificationOrdering
pagination: OffsetPaginationInput): NotificationOutputCountList!
filters: NotificationFilter: To get only required notifications, you can adjust filtration
id: Filtration by notification IDs:exact: ID: Get an exact notification object using ID notification value.iExact: ID: Get an exact notification object using ID notification value. Not case-sensitive.contains: String: Get notification objects using value matching with notification ID.iContains: String: Get notification objects using value matching with notification ID. Not case-sensitive.inList: [ID!]: Get exact notification objects using a list of notification IDs.gt: ID: Get notification objects which IDs are greater(>) than submitted IDs. String matching is used.gte: ID: Get notification objects which IDs are greater than or equal to (>=) submitted ID. String matching is used.lt: ID: Get notification objects which IDs are less (<) than submitted ID. String matching is used.lte: ID: Get notification objects which IDs are less than or equal to(<=) submitted ID. String matching is used.startsWith: String: Get notification objects which IDs start with submitted value.iStartsWith: String: Get notification objects which IDs start with submitted value. Not case-sensitive.endsWith: String: Get notification objects which IDs end with submitted value.iEndsWith: String: Get notification objects which IDs end with submitted value. Not case-sensitive.range: [ID!]: Get notification objects which IDs are within the range of submitted IDs. String matching is used.isNull: Boolean: Get notification objects which IDs are equal(true) or not equal(false) tonull.regex: String: Get notification objects which IDs meet a submitted regular expression.iRegex: String: Get notification objects which IDs meet a submitted regular expression. Not case-sensitive.
creationDate: DatetimeFilterLookupCustom: Filtration by notification creation date. The parameters are similar to the ones for filtration by ID.lastModified: DatetimeFilterLookupCustom: Filtration by date of the last notification modification. The parameters are similar to the ones for filtration by ID.isViewed: Boolean: Filtration of viewed (true) and not viewed (false) notifications.isActive: Boolean: Filtration of active (true) and not active (false) notifications.endpointId: UUID: Filtration of notifications by ID assigned to the endpoint they were sent to.isSent: Boolean: Filtration of notifications by in-system notifications (true) and notifications sent to external endpoints (false).triggerId: ID: Filtration of notifications by trigger ID.profileId: ID: Filtration of notifications by profile ID.type: NotificationType: Filtration of notifications by type.profileGroupTitle: String: Filtration of notifications by group name.
order: NotificationOrdering: You can adjust sorting of notification list:
id: Ordering: Sorting by ID. String matching is used.(ASC: Ascending sorting,DESC: Descending sorting)creationDate: Ordering: Sorting by notification creation date.lastModified: Ordering: Sorting by date of the last notification modification.
pagination: OffsetPaginationInput:
limit: Int!: This parameter allows to get the firstnnotifications from the list.offset: Int!: This parameter allows to remove the firstnnotifications from the list.
NotificationOutputCountList!: The query result is a list of notifications that contains the following parameters:
totalCount: Int!: Total number of notifications.collectionItems: [NotificationOutput!]!:id: ID!: Notification ID.isActive: Boolean!: Attribute that notification is active.isViewed: Boolean!: Attribute that notification is viewed.lastModified: DateTime: Date of the last notification modification in ISO 8601 format.activityId: ID: ID assigned to activity that causes creating of notification.avatarId: ID: Profile avatar ID.cameraId: ID: ID assigned to a camera that detected the activity.cameraTitle: String: Camera namecreationDate: DateTime!: Notification creation date in ISO 8601 format.currentCount: Int: Number of persons in the camera's field of viewdescription: String: Profile descriptionendpointStatuses: [EndpointStatusOutput!]: List of endpoints and their statuses:endpoint: EndpointOutput!: Endpoint object.status: String!: Submission status.
limit: Int: Max number of persons.name: String: Profile name.profileGroupColor: String: Color of the group linked to a trigger.profileGroupId: ID: ID assigned to the group linked to a trigger.profileGroupTitle: String: Name of the group linked to a trigger.profileId: ID: Profile ID.realtimeBodyPhotoId: String: ID assigned to a photo of the person detected by camera (Missing, if the anonymous mode is enabled).realtimeFacePhotoId: String: ID assigned to a face image of a person detected by camera (Missing, if the anonymous mode is enabled).triggerId: ID: ID assigned to a trigger that caused the notification.type: String!: Notification type.
Example Request:
{
notifications(filters: {
id: {
exact: "ed1a55af-6daf-4368-ac68-0defdff5159c"
}
}) {
totalCount
collectionItems {
profileGroupColor
activityId
avatarId
cameraId
cameraTitle
creationDate
currentCount
description
id
endpointStatuses {
status
endpoint {
id
}
}
isActive
isViewed
lastModified
limit
name
profileGroupId
profileGroupTitle
profileId
realtimeBodyPhotoId
realtimeFacePhotoId
triggerId
type
}
}
}
Example Response:
API returns the following result:
{
"data": {
"notifications": {
"totalCount": 1,
"collectionItems": [
{
"profileGroupColor": "red.600",
"activityId": "f3bf0ac7-5849-45d7-85e0-12de925633da",
"avatarId": "4312809b-99b2-47a7-beb9-b60b87c07594",
"cameraId": "3c818dc4-352c-47a7-b32b-465fbd4a9665",
"cameraTitle": "My <ShortProductName/> Agent",
"creationDate": "2022-07-07T13:10:53.619145+00:00",
"currentCount": null,
"description": "gap\n",
"id": "ed1a55af-6daf-4368-ac68-0defdff5159c",
"endpointStatuses": [
{
"status": "success",
"endpoint": {
"id": "db38ec53-c09d-45f2-bfed-5877c9bd9016"
}
}
],
"isActive": false,
"isViewed": true,
"lastModified": "2022-07-07T13:11:12.264337+00:00",
"limit": null,
"name": null,
"profileGroupId": "97c1a9fa-bfde-460a-9bda-f610060423ca",
"profileGroupTitle": "My persons",
"profileId": "b4a16647-1336-4ed8-a440-e4e8896e1de3",
"realtimeBodyPhotoId": "339a4020-a9af-49e8-83d4-3fc34ef794e5",
"realtimeFacePhotoId": null,
"triggerId": "66b3eb1a-de88-469e-83c9-697785a0a4c2",
"type": "presence"
}
]
}
}
}
View Notifications
Mutation viewingNotifications marks one or several notifications as viewed.
viewingNotifications(notificationIds: [String!]!): MutationResult!
notificationIds: [String!]!: List of IDs assigned to notifications which should be marked as viewed.
MutationResult:The mutation result is JSON that contains the following parameters:
ok: Boolean!: Attribute that mutation is successfully completed.
Example Request:
mutation{
viewingNotifications(notificationIds: ["5a1a1bed-5bc0-4e8e-8154-e56c5ef5ea87"]) {
ok
}
}
Example Response:
API returns the following result:
{
"data": {
"viewingNotifications": {
"ok": true
}
}
}
View All Notifications
Mutation markAllNotificationsAsViewed marks all notifications as viewed.
markAllNotificationsAsViewed: MutationResult!
MutationResult:The mutation result is JSON that contains the following parameters:
ok: Boolean!: Attribute that mutation is successfully completed.
Example Request:
mutation{
markAllNotificationsAsViewed {
ok
}
}
Example Response:
API returns the following result:
{
"data": {
"markAllNotificationsAsViewed": {
"ok": true
}
}
}