notificationcenter (1.0)

Download OpenAPI specification:Download

The (OX Protect) Notification Center takes care of sending messages to users. This can be real-time security alerts as well as other security related or informal messages, based on events generated by various source like PowerDNS, Anti Abuse Shield or other sources.

Authentication

X-API-Key

Security Scheme Type API Key
Header parameter name: X-API-Key

user

The user API to manage the users of the notifcationcenter

Create a user

Authorizations:
Request Body schema: application/json

Data of the new user

Array of objects (EmailAddress) [ items ]
locale
string

The selected language of the user

Array of objects (PhoneNumber) [ items ]
Array of objects (PushToken) [ items ]
Array of objects (UserMapping) [ items ]
user_id
required
string [ 1 .. 50 ] characters

Unique user id for notification centre

Responses

Request samples

Content type
application/json
{
  • "emailaddress": [
    ],
  • "locale": "string",
  • "phonenumbers": [
    ],
  • "pushtokens": [
    ],
  • "userMappings": [
    ],
  • "user_id": "string"
}

Delete a user

Authorizations:
path Parameters
userId
required
string

The id of the user to delete

Responses

Get a user with the userId

Authorizations:
path Parameters
userId
required
string

The user id of the user to get

Responses

Response samples

Content type
application/json
{
  • "emailaddress": [
    ],
  • "id": 0,
  • "locale": "string",
  • "phonenumbers": [
    ],
  • "pushtokens": [
    ],
  • "userMappings": [
    ],
  • "user_id": "string"
}

Partial update of a user

Authorizations:
path Parameters
userId
required
string

The current id of the user to update

Request Body schema: application/json

Update data for a user

locale
string

The selected language of the user

user_id
string

Unique user id for notification centre

Responses

Request samples

Content type
application/json
{
  • "locale": "string",
  • "user_id": "string"
}

Response samples

Content type
application/json
{
  • "emailaddress": [
    ],
  • "id": 0,
  • "locale": "string",
  • "phonenumbers": [
    ],
  • "pushtokens": [
    ],
  • "userMappings": [
    ],
  • "user_id": "string"
}

Update or create a user

Authorizations:
path Parameters
userId
required
string

The current id of the user to update

query Parameters
create
boolean

Create if not exists?

add
boolean

Add and not replace notification channels?

Request Body schema: application/json

Update data for a user

Array of objects (EmailAddress) [ items ]
locale
string

The selected language of the user

Array of objects (PhoneNumber) [ items ]
Array of objects (PushToken) [ items ]
Array of objects (UserMapping) [ items ]
user_id
required
string [ 1 .. 50 ] characters

Unique user id for notification centre

Responses

Request samples

Content type
application/json
{
  • "emailaddress": [
    ],
  • "locale": "string",
  • "phonenumbers": [
    ],
  • "pushtokens": [
    ],
  • "userMappings": [
    ],
  • "user_id": "string"
}

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

Get the current channel configuration of all channels of the user with the userId. If there is no channel configuration the lists of the configuration will be empty

Authorizations:
path Parameters
userId
required
string

Id of the user to create the device for

Responses

Response samples

Content type
application/json
{
  • "email": {
    },
  • "push": {
    },
  • "sms": {
    }
}

Sets or updates the channel configuration of all channels of the user with the userId. The old channel configurations will be overwritten completly

Authorizations:
path Parameters
userId
required
string

Id of the user to create the notificationconfiguration for

Request Body schema: application/json

Data of all channel configuration

object (ChannelConfiguration)

The configuration for a channel to send notifications to a user. The object contains a whitelist. Each notification which has a category or code which is mentioned in configuration list will be send. If the list is empty all notifications will be send.

object (ChannelConfiguration)

The configuration for a channel to send notifications to a user. The object contains a whitelist. Each notification which has a category or code which is mentioned in configuration list will be send. If the list is empty all notifications will be send.

object (ChannelConfiguration)

The configuration for a channel to send notifications to a user. The object contains a whitelist. Each notification which has a category or code which is mentioned in configuration list will be send. If the list is empty all notifications will be send.

Responses

Request samples

Content type
application/json
{
  • "email": {
    },
  • "push": {
    },
  • "sms": {
    }
}

Response samples

Content type
application/json
{
  • "email": {
    },
  • "push": {
    },
  • "sms": {
    }
}

users

The users API to get the users list and count of the notifcationcenter

Get a complete list of all registered users

Authorizations:
query Parameters
page
integer <int32>

page index of paging

size
integer <int32>

size of a page in paging

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "pageCurrent": 0,
  • "pageSize": 0,
  • "pagesTotal": 0,
  • "size": 0
}

Add a list of new users to the notificationcenter. If there is already a user of the list registered at the notificationcenter none of the users will be added and an error will be returned.

Authorizations:
Request Body schema: application/json

List of new users

Array
Array of objects (EmailAddress) [ items ]
locale
string

The selected language of the user

Array of objects (PhoneNumber) [ items ]
Array of objects (PushToken) [ items ]
Array of objects (UserMapping) [ items ]
user_id
required
string [ 1 .. 50 ] characters

Unique user id for notification centre

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Add a list of new users to the notificationcenter. If there is already a user of the list registered at the notificationcenter the user will be updated.

Authorizations:
Request Body schema: application/json

List of new users

Array
Array of objects (EmailAddress) [ items ]
locale
string

The selected language of the user

Array of objects (PhoneNumber) [ items ]
Array of objects (PushToken) [ items ]
Array of objects (UserMapping) [ items ]
user_id
required
string [ 1 .. 50 ] characters

Unique user id for notification centre

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Get count of all registered users

Authorizations:

Responses

Response samples

Content type
application/json
0

notifications

The notification api for getting a notication or many notifications by id

Create a notification

Authorizations:
Request Body schema: application/json

Data of the new notification

app
required
string

The identifier of the application that generated the notification.

broadcast
boolean

Whether the notification has been broadcasted to all users.

categories
Array of strings

The names of all classification categories that caused to block a request.

code
required
string
Enum: "NOTIFY_INFO" "PROTECT_NOTIFY_BLOCKED_MALWARE" "PROTECT_NOTIFY_BLOCKED_FILTER_CATEGORY" "PROTECT_NOTIFY_BLOCKED_FILTER_BLACKLIST" "PROTECT_NOTIFY_NEW_DEVICE" "NOTIFY_LOGIN_SUCC" "NOTIFY_LOGIN_FAILED" "NOTIFY_LOGIN_SUSPICIOUS"

Integral notification type identifier.

NOTIFY_INFO| Just an informal notification that should be displayed to the user, e.g. an outage announcement.
PROTECT_NOTIFY_BLOCKED_MALWARE| Request was blocked because of malware.
PROTECT_NOTIFY_BLOCKED_FILTER_CATEGORY| Request was blocked because of a filter rule, category.
PROTECT_NOTIFY_BLOCKED_FILTER_BLACKLIST| Request was blocked because of a filter rule, blacklist.
PROTECT_NOTIFY_NEW_DEVICE| A new device was detected.
NOTIFY_LOGIN_SUCC| Just an informal notification that the user has been logged in successfully.
NOTIFY_LOGIN_FAILED| Just an informal notification that the user failed to login.
NOTIFY_LOGIN_SUSPICIOUS| The user has logged in from somewhere but the login is suspicious.

device_id
string [ 0 .. 50 ] characters

The identifier of the affected (e.g. blocked) device. Empty string if the notification does not belong to a specific device.

device_ip
string

The IP address of the affected (e.g. blocked) device. Empty string if the notification does not belong to a specific device.

device_name
string

The name of the new device. The value of this property will only be recognized when the code is PROTECT_NOTIFY_NEW_DEVICE.

device_type
string

The type of the new device. The value of this property will only be recognized when the code is PROTECT_NOTIFY_NEW_DEVICE.

object (NotificationTokenRepresentation)
hidden
boolean

Indicator if the notification is hidden.

severity
string
Enum: "LOW" "MEDIUM" "HIGH"

An identifier for the severity of the notification.

text
string

An arbitrary explicit notification text to be shown to the user.

timestamp
required
string <date-time>

ISO-8601 time stamp of the notification, e.g. '2017-07-11T11:09:54'

url
string

The URL that was blocked by a filter rule.

user_id
required
string [ 1 .. 50 ] characters

The identifier of the user owning the notification.

Responses

Request samples

Content type
application/json
{
  • "app": "string",
  • "broadcast": true,
  • "categories": [
    ],
  • "code": "NOTIFY_INFO",
  • "device_id": "string",
  • "device_ip": "string",
  • "device_name": "string",
  • "device_type": "string",
  • "excluded_push_token": {
    },
  • "hidden": true,
  • "severity": "LOW",
  • "text": "string",
  • "timestamp": "2019-08-24T14:15:22Z",
  • "url": "string",
  • "user_id": "string"
}

Update a notification

Authorizations:
path Parameters
userId
required
string

Id of the user to update the notifications for

notificationId
required
string

Id of the the notifications to update

Request Body schema: application/json

Update data for the notification

hidden
boolean

Indicator if the notification is hidden.

Responses

Request samples

Content type
application/json
{
  • "hidden": true
}

Response samples

Content type
application/json
{
  • "app": "string",
  • "broadcast": true,
  • "categories": [
    ],
  • "code": "NOTIFY_INFO",
  • "device_id": "string",
  • "device_ip": "string",
  • "device_name": "string",
  • "device_type": "string",
  • "excluded_push_token": {
    },
  • "hidden": true,
  • "id": "string",
  • "severity": "LOW",
  • "text": "string",
  • "timestamp": "2019-08-24T14:15:22Z",
  • "url": "string",
  • "user_id": "string"
}

Get notifications assigned to user with userId

Authorizations:
path Parameters
userId
required
string

Id of the user to get the notifications for

query Parameters
page
integer <int32>

page index of paging

size
integer <int32>

size of a page in paging

sort
required
string
Enum: "ASC" "DESC"

Sort by timestamp. Possible values are ASC(ascending) or DESC(descending)

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "pageCurrent": 0,
  • "pageSize": 0,
  • "pagesTotal": 0,
  • "size": 0
}

Get notifications assigned to user with userId filtered by the information of the body ordered by creation date

Authorizations:
path Parameters
userId
required
string

Id of the user to get the notifications for

query Parameters
page
integer <int32>

page index of paging

size
integer <int32>

size of a page in paging

whitelistfilter
boolean

Use filter as a whitelistfilter?

sort
required
string
Enum: "ASC" "DESC"

Sort by timestamp. Possible values are ASC(ascending) or DESC(descending)

Request Body schema: application/json

Filter information

categories
Array of strings

list of categories to search for

codes
Array of strings
Items Enum: "NOTIFY_INFO" "PROTECT_NOTIFY_BLOCKED_MALWARE" "PROTECT_NOTIFY_BLOCKED_FILTER_CATEGORY" "PROTECT_NOTIFY_BLOCKED_FILTER_BLACKLIST" "PROTECT_NOTIFY_NEW_DEVICE" "NOTIFY_LOGIN_SUCC" "NOTIFY_LOGIN_FAILED" "NOTIFY_LOGIN_SUSPICIOUS"

list of types to search for

deviceIds
Array of strings

list of deviceIds to search for

deviceIps
Array of strings

list of deviceIps to search for

remember_youngest_not_timestamp
boolean

Remember the timestamp of the youngest notification

show_hidden
boolean

Indicator if hidden notifications should be selected.

sites
Array of strings

list of sites to search for

object (TimePeriod)

from until search

Responses

Request samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ],
  • "deviceIds": [
    ],
  • "deviceIps": [
    ],
  • "remember_youngest_not_timestamp": true,
  • "show_hidden": true,
  • "sites": [
    ],
  • "time": {
    }
}

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "pageCurrent": 0,
  • "pageSize": 0,
  • "pagesTotal": 0,
  • "size": 0
}

Get count notifications assigned to user with userId

Authorizations:
path Parameters
userId
required
string

Id of the user to get the notifications for

Responses

Response samples

Content type
application/json
0

Get count notifications assigned to user with userId filtered by information of the body

Authorizations:
path Parameters
userId
required
string

Id of the user to get the notifications for

query Parameters
whitelistfilter
boolean

Use filter as a whitelistfilter?

Request Body schema: application/json

Filter information

categories
Array of strings

list of categories to search for

codes
Array of strings
Items Enum: "NOTIFY_INFO" "PROTECT_NOTIFY_BLOCKED_MALWARE" "PROTECT_NOTIFY_BLOCKED_FILTER_CATEGORY" "PROTECT_NOTIFY_BLOCKED_FILTER_BLACKLIST" "PROTECT_NOTIFY_NEW_DEVICE" "NOTIFY_LOGIN_SUCC" "NOTIFY_LOGIN_FAILED" "NOTIFY_LOGIN_SUSPICIOUS"

list of types to search for

deviceIds
Array of strings

list of deviceIds to search for

deviceIps
Array of strings

list of deviceIps to search for

remember_youngest_not_timestamp
boolean

Remember the timestamp of the youngest notification

show_hidden
boolean

Indicator if hidden notifications should be selected.

sites
Array of strings

list of sites to search for

object (TimePeriod)

from until search

Responses

Request samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ],
  • "deviceIds": [
    ],
  • "deviceIps": [
    ],
  • "remember_youngest_not_timestamp": true,
  • "show_hidden": true,
  • "sites": [
    ],
  • "time": {
    }
}

Response samples

Content type
application/json
0

Get count of new notifications. The filter for the post notifications endpoint has a parameter called remember_youngest_not_timestamp. If this value is true the timestampof the youngest notification will be remembered. When you call this endpoint the count all notifications that have a younger timestamp than this notification will be returned.

Authorizations:
path Parameters
userId
required
string

Id of the user to get the notifications for

Responses

Response samples

Content type
application/json
0

Get all filter settings based on the current notifications a user has

Authorizations:
path Parameters
userId
required
string

Id of the user to get filter settings for

query Parameters
withHidden
boolean

With values of hidden notifications?

Responses

Response samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ],
  • "deviceIds": [
    ],
  • "deviceIps": [
    ],
  • "remember_youngest_not_timestamp": true,
  • "show_hidden": true,
  • "sites": [
    ],
  • "time": {
    }
}

Get notifications with notificationIds assigned to user with userId. The notifications can be a single id or a comma separated list

Authorizations:
path Parameters
userId
required
string

Id of the user to get the notifications for

notificationIds
required
string

The single id or comma separated list of the notifications to get

query Parameters
sort
required
string
Enum: "ASC" "DESC"

Sort by timestamp. Possible values are ASC(ascending) or DESC(descending)

Responses

Response samples

Content type
application/json
{
  • "app": "string",
  • "broadcast": true,
  • "categories": [
    ],
  • "code": "NOTIFY_INFO",
  • "device_id": "string",
  • "device_ip": "string",
  • "device_name": "string",
  • "device_type": "string",
  • "excluded_push_token": {
    },
  • "hidden": true,
  • "id": "string",
  • "severity": "LOW",
  • "text": "string",
  • "timestamp": "2019-08-24T14:15:22Z",
  • "url": "string",
  • "user_id": "string"
}

emailaddress

The email address API for creating, updating and removing an email address for an user. The email address will be used for sending notifications to a user

Get channel configuration for the email outbound channel

Authorizations:
path Parameters
userId
required
string

Get email channel configuration associated to the selected user

Responses

Response samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Create or update the channel configuration for the email outbound channel

Authorizations:
path Parameters
userId
required
string

Get email channel configuration associated to the selected user

Request Body schema: application/json

Data of the channel configurion of the email channel

categories
Array of strings

if one of these categories occures in a notification the user will not be notified by a notification himself

codes
Array of strings
Items Enum: "NOTIFY_INFO" "PROTECT_NOTIFY_BLOCKED_MALWARE" "PROTECT_NOTIFY_BLOCKED_FILTER_CATEGORY" "PROTECT_NOTIFY_BLOCKED_FILTER_BLACKLIST" "PROTECT_NOTIFY_NEW_DEVICE" "NOTIFY_LOGIN_SUCC" "NOTIFY_LOGIN_FAILED" "NOTIFY_LOGIN_SUSPICIOUS"

if one of these codes occures in a notification the user will not be notified by notification himself

Responses

Request samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Response samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Delete all email addresses associated to a user

Authorizations:
path Parameters
userId
required
string

Id or login of the user for which all email addresses will be removed

Responses

Get all email adress associated to the user

Authorizations:
path Parameters
userId
required
string

Get all email adresses associated to the selected user

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "size": 0
}

Adds a new email address to user

Authorizations:
path Parameters
userId
required
string

Id of the user to create the email address for

Request Body schema: application/json

Data of the new email

active
boolean

Indicates if email address is active for notifications

emailaddress
required
string [ 0 .. 250 ] characters

Email address of the user for notifications

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "emailaddress": "string"
}

Delete the email with the specified id associated to a user

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the email address to delete is associated to

emailaddressId
required
string

Id or value of the email address to delete

Responses

Get the email address with the specified id

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the email address to get is associated to

emailaddressId
required
string

Id or value of the email address to get

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "emailaddress": "string",
  • "id": 0
}

Partial updates the email address

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the email address to update is associated to

emailaddressId
required
string

Id or value of the email address to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the email address

active
boolean

Email address active for notifications

emailaddress
string [ 0 .. 255 ] characters

Email of the user for notifications

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "emailaddress": "string"
}

Response samples

Content type
application/json
{
  • "active": true,
  • "emailaddress": "string",
  • "id": 0
}

Update or creates the email address for the user with the userId

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the email address to update is associated to

emailaddressId
required
string

Id or value of the email address to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the email address

active
boolean

Indicates if email address is active for notifications

emailaddress
required
string [ 0 .. 250 ] characters

Email address of the user for notifications

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "emailaddress": "string"
}

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

phonenumber

The phone number API for creating, updating and removing a phone number for an user. The phone number will be used for sending notifications to a user by sms

Adds a new phone number to user

Authorizations:
path Parameters
userId
required
string

Id of the user to create the phone number for

Request Body schema: application/json

Data of the new phone number

active
boolean

Phone number active for notifications

phone_number
required
string [ 0 .. 250 ] characters

Phone number of the user for sms notifications

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "phone_number": "string"
}

Delete the phone number with the specified id associated to a user

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the phonenumber to delete is associdated to

phonenumberId
required
string

Id value of the phone number to delete

Responses

Get the phone number with the specified id

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the phonenumber to get is associdated to

phonenumberId
required
string

Id or value of the phone number to get

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "id": 0,
  • "phone_number": "string"
}

Partial updates the phone number

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the phonenumber to delete is associdated to

phonenumberId
required
string

Id or value of the phone number to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the phone number

active
boolean

Phone number active for notifications

phone_number
string [ 0 .. 255 ] characters

Phone number of the user for sms notifications

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "phone_number": "string"
}

Response samples

Content type
application/json
{
  • "active": true,
  • "id": 0,
  • "phone_number": "string"
}

Updates or create the phone number

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the phonenumber to delete is associdated to

phonenumberId
required
string

Id or value of the phone number to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the phone number

active
boolean

Phone number active for notifications

phone_number
required
string [ 0 .. 250 ] characters

Phone number of the user for sms notifications

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "phone_number": "string"
}

Response samples

Content type
application/json
{
  • "active": true,
  • "id": 0,
  • "phone_number": "string"
}

Delete all phonenumbers associated to a user

Authorizations:
path Parameters
userId
required
string

Id or login of the user for which all phonenumbers will be removed

Responses

Get all phone numbers associated to the user

Authorizations:
path Parameters
userId
required
string

Get all phone numbers associated to the selected user

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "size": 0
}

Get notification configuration for the sms outbound channel

Authorizations:
path Parameters
userId
required
string

Get sms channel configuration associated to the selected user

Responses

Response samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Create or update the channel configuration for the sms outbound channel

Authorizations:
path Parameters
userId
required
string

Get sms channel configuration associated to the selected user

Request Body schema: application/json

Data of the channel configurion of the sms channel

categories
Array of strings

if one of these categories occures in a notification the user will not be notified by a notification himself

codes
Array of strings
Items Enum: "NOTIFY_INFO" "PROTECT_NOTIFY_BLOCKED_MALWARE" "PROTECT_NOTIFY_BLOCKED_FILTER_CATEGORY" "PROTECT_NOTIFY_BLOCKED_FILTER_BLACKLIST" "PROTECT_NOTIFY_NEW_DEVICE" "NOTIFY_LOGIN_SUCC" "NOTIFY_LOGIN_FAILED" "NOTIFY_LOGIN_SUSPICIOUS"

if one of these codes occures in a notification the user will not be notified by notification himself

Responses

Request samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Response samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

email

The email api to send emails with different context

Sends an email for 2-Factor-Auth

Authorizations:
Request Body schema: application/json

Email data

locale
string

The selected language

recipient
required
string

Recipient of the email.

sender
string

Sender of the email.

token
required
string

The token which will be placed in the email to send.

Responses

Request samples

Content type
application/json
{
  • "locale": "string",
  • "recipient": "string",
  • "sender": "string",
  • "token": "string"
}

pushtoken

The push token API for adding, updating and removing push tokens of a user

Adds a the token to the user

Authorizations:
path Parameters
userId
required
string

Id of the user to set the token for

Request Body schema: application/json

Data of the new token

active
boolean

Token active for notifications

id
integer <int32>

Id of the push token. This value is optional. If a single push token is updated the id can be null or must be the same as in the path.When a push token will be created the id will not be respected.

provider_type
required
string
Enum: "ANDROID" "IOS"

IOS or ANDROID

token
required
string [ 0 .. 250 ] characters

Token for push to the cloud

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "id": 0,
  • "provider_type": "ANDROID",
  • "token": "string"
}

Get notification configuration for the push outbound channel

Authorizations:
path Parameters
userId
required
string

Get push channel configuration associated to the selected user

Responses

Response samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Create or update the channel configuration for the push outbound channel

Authorizations:
path Parameters
userId
required
string

Get push channel configuration associated to the selected user

Request Body schema: application/json

Data of the channel configurion of the push channel

categories
Array of strings

if one of these categories occures in a notification the user will not be notified by a notification himself

codes
Array of strings
Items Enum: "NOTIFY_INFO" "PROTECT_NOTIFY_BLOCKED_MALWARE" "PROTECT_NOTIFY_BLOCKED_FILTER_CATEGORY" "PROTECT_NOTIFY_BLOCKED_FILTER_BLACKLIST" "PROTECT_NOTIFY_NEW_DEVICE" "NOTIFY_LOGIN_SUCC" "NOTIFY_LOGIN_FAILED" "NOTIFY_LOGIN_SUSPICIOUS"

if one of these codes occures in a notification the user will not be notified by notification himself

Responses

Request samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Response samples

Content type
application/json
{
  • "categories": [
    ],
  • "codes": [
    ]
}

Delete the pushtoken with the specified id

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the pushtoken to delete is associdated to

tokenId
required
string

Id or value of the pushtoken to delete

Responses

Get the pushtoken with the specified id

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the pushtoken to delete is associdated to

tokenId
required
string

Id or value of the pushtoken to get

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "id": 0,
  • "provider_type": "ANDROID",
  • "token": "string"
}

Partial updates a token

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the pushtoken to delete is associdated to

tokenId
required
string

Id or value of the pushtoken to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the new pushtoken

active
boolean

Use the token to notify

provider_type
required
string
Enum: "ANDROID" "IOS"

IOS or ANDROID

token
string [ 0 .. 255 ] characters

Token for push to the cloud

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "provider_type": "ANDROID",
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "active": true,
  • "id": 0,
  • "provider_type": "ANDROID",
  • "token": "string"
}

Updates a pushtoken

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the pushtoken to update is associdated to

tokenId
required
string

Id or value of the pushtoken to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the new pushtoken

active
boolean

Use the token to notify

provider_type
required
string
Enum: "ANDROID" "IOS"

IOS or ANDROID

token
string [ 0 .. 255 ] characters

Token for push to the cloud

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "provider_type": "ANDROID",
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

Delete all tokens associated of the user

Authorizations:
path Parameters
userId
required
string

Id of the user to get the tokens for

Responses

List of all tokens associated to the user

Authorizations:
path Parameters
userId
required
string

Id of the user to get the tokens for

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "size": 0
}

Replaces the current list of pushtokens of the user with the submitted one

Authorizations:
path Parameters
userId
required
string

Id or login of the user to replace the push tokens for

Request Body schema: application/json

List of push tokens

Array
active
boolean

Token active for notifications

id
integer <int32>

Id of the push token. This value is optional. If a single push token is updated the id can be null or must be the same as in the path.When a push token will be created the id will not be respected.

provider_type
required
string
Enum: "ANDROID" "IOS"

IOS or ANDROID

token
required
string [ 0 .. 250 ] characters

Token for push to the cloud

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "size": 0
}

Enable or disables the sending of push notifications for a user

Authorizations:
path Parameters
userId
required
string

Id or login of the user to change the state of push tokens for

Request Body schema: application/json

Indicates if the push tokens should be enabled or disabled

enable
required
boolean

Enable or disable

Responses

Request samples

Content type
application/json
{
  • "enable": true
}

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "size": 0
}

usermapping

The usermapping API to manage that a user can have different names in services which uses the notificationcenter

Adds a the mapping data to a user

Authorizations:
path Parameters
userId
required
string

Id of the user to set the usermapping for

Request Body schema: application/json

Data of the new usermapping

app
required
string [ 1 .. 32 ] characters

Name of the app

user_name_in_app
required
string [ 1 .. 50 ] characters

The name of user in the app

Responses

Request samples

Content type
application/json
{
  • "app": "string",
  • "user_name_in_app": "string"
}

Delete the user mapping with the specified id

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the usermapping to delete is associdated to

usermappingId
required
integer <int32>

Id of usermapping to delete

Responses

Get usermapping by the specified id

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the usermapping to delete is associdated to

usermappingId
required
integer <int32>

Id of usermapping to get

Responses

Response samples

Content type
application/json
{
  • "app": "string",
  • "id": 0,
  • "user_name_in_app": "string"
}

Updates or creates a user mapping

Authorizations:
path Parameters
userId
required
string

Id or login of the user to which the usermapping to delete is associdated to

usermappingId
required
integer <int32>

Id of usermapping to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the new usermapping

app
required
string [ 1 .. 32 ] characters

Name of the app

user_name_in_app
required
string [ 1 .. 50 ] characters

The name of user in the app

Responses

Request samples

Content type
application/json
{
  • "app": "string",
  • "user_name_in_app": "string"
}

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "string"
}

Delete alle the user mappings of the user except of the default mapping

Authorizations:
path Parameters
userId
required
string

Id or login of the user for which the usermappings will be deleted

Responses

List of all mappings associated to the user

Authorizations:
path Parameters
userId
required
string

Id of the user to set the usermapping for

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "size": 0
}

device

The device API to manage the devices for the users of the notificationcenter

Creates a new device and associates it to the user with the userId

Authorizations:
path Parameters
userId
required
string

Id of the user to create the device for

Request Body schema: application/json

Data of the device

active_for_notifications
boolean

Indicates if notifications about this device should be send.

device_mac
required
string [ 1 .. 50 ] characters

The deviceId (MAC) of the device. The deviceId is unique for all devices.

device_name
string

Name of the device

device_type
string

Type of the device

Responses

Request samples

Content type
application/json
{
  • "active_for_notifications": true,
  • "device_mac": "string",
  • "device_name": "string",
  • "device_type": "string"
}

Get the device of the user with deviceId

Authorizations:
path Parameters
userId
required
string

Id of the user to get the devices for

deviceId
required
string

Id(Integer) or deviceId(MAC) of the device to get

Responses

Response samples

Content type
application/json
{
  • "active_for_notifications": true,
  • "device_mac": "string",
  • "device_name": "string",
  • "device_type": "string",
  • "id": 0
}

Partial update the device with deviceId of user with the userId

Authorizations:
path Parameters
userId
required
string

Id of the user to create the device for

deviceId
required
string

Id of the device to update

Request Body schema: application/json

Data of the device

active_for_notifications
boolean

Indicates if notifications about this device should be send.

device_mac
required
string [ 0 .. 32 ] characters

The deviceId (MAC) of the device. The deviceId is unique for all devices.

device_name
string

Name of the device

device_type
string

Type of the device

Responses

Request samples

Content type
application/json
{
  • "active_for_notifications": true,
  • "device_mac": "string",
  • "device_name": "string",
  • "device_type": "string"
}

Updates or creates the device with the deviceId of the user with the userId

Authorizations:
path Parameters
userId
required
string

Id of the user to create the device for

deviceId
required
string

Id of the device to update

query Parameters
create
boolean

Create if not exists?

Request Body schema: application/json

Data of the device

active_for_notifications
boolean

Indicates if notifications about this device should be send.

device_mac
required
string [ 1 .. 50 ] characters

The deviceId (MAC) of the device. The deviceId is unique for all devices.

device_name
string

Name of the device

device_type
string

Type of the device

Responses

Request samples

Content type
application/json
{
  • "active_for_notifications": true,
  • "device_mac": "string",
  • "device_name": "string",
  • "device_type": "string"
}

Get the devices of the user with userId

Authorizations:
path Parameters
userId
required
string

Id of the user to get the devices for

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "size": 0
}

Updates the devices of the user. If a device with the mac does not exist it will be created. If a device exists it will be updated. If the device exists in the notificationcenterbut not in the delivered list it will be deleted.

Authorizations:
path Parameters
userId
required
string

Id of the user to create the device for

Request Body schema: application/json

Data of the device

Array
active_for_notifications
boolean

Indicates if notifications about this device should be send.

device_mac
required
string [ 1 .. 50 ] characters

The deviceId (MAC) of the device. The deviceId is unique for all devices.

device_name
string

Name of the device

device_type
string

Type of the device

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Delete the devices with deviceId associated to user with userId

Authorizations:
path Parameters
userId
required
string

Id of the user to delete the devices for

devicesIds
required
string

Ids of the devices to delete

Responses

security

The security API to generate JSON Web Tokens

Create a new token for security

The token will only be generated. It will not be added automatically

Request Body schema: application/json

The body

roles
Array of strings

List of roles which the generated JWT-Token will contain.

Responses

Request samples

Content type
application/json
{
  • "roles": [
    ]
}