Download OpenAPI specification:Download
The Web Middleware API of OX Protect allows web applications to communicate with the OX Protect Core Middleware.
Authenticates a user, and creates a new server session for the user specified in the request body. The session
identifier will be stored in the response cookie protect-sid. If the user has two-factor authentication
enabled, a token will be sent to the email address or phone number. That token needs to be sent with the route
/session/login/token to fully authenticate the user.
The identifier of the user and the password needed for authentication.
| locale | string [ 1 .. 32 ] characters The locale to be used for the session (will be stored in the user settings). If omitted, the locale that is currently stored in the user settings will be used. |
| password required | string >= 6 characters The password of the user. |
| timezone | string [ 1 .. 100 ] characters The current time zone of the user, e.g. Australia/Sydney. Will be used as initial time zone for the user account, if no time zone has been configured yet. |
| username required | string [ 1 .. 50 ] characters The middleware identifier of the user. |
{- "locale": "string",
- "password": "string",
- "timezone": "string",
- "username": "string"
}{- "data": {
- "recipient": "string",
- "timeout": 0,
- "type": "mail"
}, - "status": "AWAITING_TFA_TOKEN"
}If the user authenticated with the route /session/login has two-factor authentication enabled, a token has
been sent to the email address or phone number. This route allows to generate and send another token to the
user which will be expected to be returned with the route /session/login/token afterwards.
{- "data": {
- "recipient": "string",
- "timeout": 0,
- "type": "mail"
}, - "status": "AWAITING_TFA_TOKEN"
}If the user authenticated with the route /session/login has two-factor authentication enabled, a token has
been sent to the email address or phone number. That token needs to be sent with this route to fully
authenticate the user.
The token needed for authentication.
| token required | string >= 4 characters The authentication token that has been sent to the user. |
{- "token": "string"
}{- "data": {
- "config": {
- "categories": [
- {
- "name": "string",
- "title": "string"
}
], - "device_mode": true,
- "platforms": [
- {
- "name": "string",
- "title": "string"
}
], - "presets": [
- {
- "categories_blocked": [
- "string"
], - "name": "string",
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
], - "title": "string"
}
], - "safesearch": [
- {
- "name": "string",
- "title": "string"
}
], - "timezones": [
- "string"
]
}, - "devices": [
- {
- "created_ts": 0,
- "device_id": "string",
- "mac": "string",
- "name": "string",
- "name_auto": "string",
- "notify": true,
- "producer": "string",
- "profile_id": 0,
- "type": "phone",
- "user_id": "string",
- "visited": true
}
], - "profiles": [
- {
- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}
], - "settings": {
- "ignore_list": [
- "string"
], - "locale": "string",
- "mail_active": true,
- "mail_address": "string",
- "mail_filter_content": true,
- "mail_filter_security": true,
- "mail_new_device": true,
- "phone_active": true,
- "phone_filter_content": true,
- "phone_filter_security": true,
- "phone_new_device": true,
- "phone_number": "string",
- "profile_wizard_shown": true,
- "push_active": true,
- "push_filter_content": true,
- "push_filter_security": true,
- "push_new_device": true,
- "tfa_active": true,
- "tfa_mail": "string",
- "tfa_phone": "string",
- "timezone": "string",
- "user_id": "string"
}, - "versions": {
- "core": {
- "build": "string",
- "timestamp": "string",
- "version": "string"
}, - "web": {
- "build": "string",
- "timestamp": "string",
- "version": "string"
}
}
}, - "status": "OK"
}Returns the complete settings of a user account but the messages.
{- "config": {
- "categories": [
- {
- "name": "string",
- "title": "string"
}
], - "device_mode": true,
- "platforms": [
- {
- "name": "string",
- "title": "string"
}
], - "presets": [
- {
- "categories_blocked": [
- "string"
], - "name": "string",
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
], - "title": "string"
}
], - "safesearch": [
- {
- "name": "string",
- "title": "string"
}
], - "timezones": [
- "string"
]
}, - "devices": [
- {
- "created_ts": 0,
- "device_id": "string",
- "mac": "string",
- "name": "string",
- "name_auto": "string",
- "notify": true,
- "producer": "string",
- "profile_id": 0,
- "type": "phone",
- "user_id": "string",
- "visited": true
}
], - "profiles": [
- {
- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}
], - "settings": {
- "ignore_list": [
- "string"
], - "locale": "string",
- "mail_active": true,
- "mail_address": "string",
- "mail_filter_content": true,
- "mail_filter_security": true,
- "mail_new_device": true,
- "phone_active": true,
- "phone_filter_content": true,
- "phone_filter_security": true,
- "phone_new_device": true,
- "phone_number": "string",
- "profile_wizard_shown": true,
- "push_active": true,
- "push_filter_content": true,
- "push_filter_security": true,
- "push_new_device": true,
- "tfa_active": true,
- "tfa_mail": "string",
- "tfa_phone": "string",
- "timezone": "string",
- "user_id": "string"
}, - "versions": {
- "core": {
- "build": "string",
- "timestamp": "string",
- "version": "string"
}, - "web": {
- "build": "string",
- "timestamp": "string",
- "version": "string"
}
}
}Returns the static configuration (classification platforms, categories, presets, and time zones) to be used by the user account, according to the device mode of the account.
{- "categories": [
- {
- "name": "string",
- "title": "string"
}
], - "device_mode": true,
- "platforms": [
- {
- "name": "string",
- "title": "string"
}
], - "presets": [
- {
- "categories_blocked": [
- "string"
], - "name": "string",
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
], - "title": "string"
}
], - "safesearch": [
- {
- "name": "string",
- "title": "string"
}
], - "timezones": [
- "string"
]
}{- "ignore_list": [
- "string"
], - "locale": "string",
- "mail_active": true,
- "mail_address": "string",
- "mail_filter_content": true,
- "mail_filter_security": true,
- "mail_new_device": true,
- "phone_active": true,
- "phone_filter_content": true,
- "phone_filter_security": true,
- "phone_new_device": true,
- "phone_number": "string",
- "profile_wizard_shown": true,
- "push_active": true,
- "push_filter_content": true,
- "push_filter_security": true,
- "push_new_device": true,
- "tfa_active": true,
- "tfa_mail": "string",
- "tfa_phone": "string",
- "timezone": "string",
- "user_id": "string"
}Modifies the settings of the user account.
| oneway | boolean If set to true, the server response will not contain the specified JSON data but an empty object only. This can be used to reduce network traffic, and allows the server to perform optimizations in specific cases. |
The properties to be changed for the user account. Omitted properties will not be modified.
It is possible to patch ignore_list string array by inserting or removing individual array elements,
instead of replacing the entire array.
Specify a JSON object with insert and delete properties (both optional). Property values can be single
strings, or string array. The values will be inserted into or deleted from the existing array respectively.
{"ignore_list":{"insert":["example.org","example.com"],"delete":"example.net"}} to patch
the ignore_list string array.Specify the insert and delete properties together with the path to the array property with dot notation.
{"ignore_list.insert":["example.org","example.com"],"ignore_list.delete":"example.net"} to
patch the ignore_list string array.It is possible to patch the ignore_list string array by toggling array elements with a patch set notation,
instead of replacing the entire array.
Specify a JSON object with a patch property. Property keys are the array elements to be inserted or
deleted, property values are booleans specifying whether to insert (true), or remove (false) the key value.
{"ignore_list":{"patch":{"example.org":true,"example.net":false}}} to patch the
ignore_list string array.Specify the patch property together with the path to the array property with dot notation.
{"ignore_list.patch":{"example.org":true,"example.net":false}} to patch the ignore_list
string array.Specify the array elements to be inserted and deleted together with the path to the array property with dot-at notation. Use the at character "@" to separate property path and array element value. Everything after the first at character will be used as array element (including additional periods and at characters).
{"ignore_list@example.org":true,"ignore_list@example.net":false} to patch the
ignore_list string array.| ignore_list | Array of strings[ items non-empty ] A list with domain names that will never be sent by push, email and SMS notifications, and can be used to filter the notification list. |
| locale | string [ 1 .. 32 ] characters The locale of the user, e.g. en-US. |
| mail_active | boolean Whether the registered email address will be used for notifications. |
| mail_address | string or null The email address used in the notification center. |
| mail_filter_content | boolean Whether to send email notifications for requests that have been blocked by content-based filtering. Will be
effective only if the property |
| mail_filter_security | boolean Whether to send email notifications for requests that have been blocked by virus/malware filtering. Will be
effective only if the property |
| mail_new_device | boolean Whether to send an email notification when a new device has been detected. Will be effective only if the
property |
| phone_active | boolean Whether the registered phone number will be used for notifications. |
| phone_filter_content | boolean Whether to send sms notifications for requests that have been blocked by content-based filtering. Will be
effective only if the property |
| phone_filter_security | boolean Whether to send sms notifications for requests that have been blocked by virus/malware filtering. Will be
effective only if the property |
| phone_new_device | boolean Whether to send a sms notification when a new device has been detected. Will be effective only if the
property |
| phone_number | string or null The phone number used in the notification center. |
| profile_wizard_shown | boolean Whether the initial profile wizard has been shown in the web application. |
| push_active | boolean Whether the registered push tokens for mobile devices will be used for push notifications. |
| push_filter_content | boolean Whether to send push notifications for requests that have been blocked by content-based filtering. Will be
effective only if the property |
| push_filter_security | boolean Whether to send push notifications for requests that have been blocked by virus/malware filtering. Will be
effective only if the property |
| push_new_device | boolean Whether to send a push notification when a new device has been detected. Will be effective only if the
property |
| tfa_active | boolean Whether the user will use two-factor authentication with an additional token sent to an email address or to a phone number. |
| tfa_mail | string or null [ 1 .. 100 ] characters The email address used to send an email with the token for two-factor authentication. |
| tfa_phone | string or null [ 1 .. 40 ] characters The phone number used to send an SMS with the token for two-factor authentication. |
| timezone | string or null [ 1 .. 100 ] characters The time zone of the user, e.g. Australia/Sydney. Used for all profile settings with times, e.g. offtime and homework time schedules. |
| user_id required | string [ 1 .. 50 ] characters The middleware identifier of the user (used in the URLs of the middleware API). |
{- "ignore_list": [
- "string"
], - "locale": "string",
- "mail_active": true,
- "mail_address": "string",
- "mail_filter_content": true,
- "mail_filter_security": true,
- "mail_new_device": true,
- "phone_active": true,
- "phone_filter_content": true,
- "phone_filter_security": true,
- "phone_new_device": true,
- "phone_number": "string",
- "profile_wizard_shown": true,
- "push_active": true,
- "push_filter_content": true,
- "push_filter_security": true,
- "push_new_device": true,
- "tfa_active": true,
- "tfa_mail": "string",
- "tfa_phone": "string",
- "timezone": "string",
- "user_id": "string"
}{- "ignore_list": [
- "string"
], - "locale": "string",
- "mail_active": true,
- "mail_address": "string",
- "mail_filter_content": true,
- "mail_filter_security": true,
- "mail_new_device": true,
- "phone_active": true,
- "phone_filter_content": true,
- "phone_filter_security": true,
- "phone_new_device": true,
- "phone_number": "string",
- "profile_wizard_shown": true,
- "push_active": true,
- "push_filter_content": true,
- "push_filter_security": true,
- "push_new_device": true,
- "tfa_active": true,
- "tfa_mail": "string",
- "tfa_phone": "string",
- "timezone": "string",
- "user_id": "string"
}Changes the internal password of the user account.
The current password of the user, and the new password to be set for the user.
| old_password required | string >= 6 characters The current password to be verified for the user. |
| password required | string >= 6 characters The new password to be set for the user. |
{- "old_password": "string",
- "password": "string"
}{- "error": "string"
}Verifies that the password in the request body matches the internal password of the user account.
The password to be checked.
| password required | string >= 6 characters The password to be verified for the user. |
{- "password": "string"
}{- "valid": true
}Creates a new filter profile in the user account. The identifier of the new filter profile will be set to the first available free profile identifier in the user account.
| oneway | boolean If set to true, the server response will not contain the complete settings of the filter profile but a JSON
object containing the property |
The properties to be set for a new profile, or to be changed in an existing filter profile. Omitted properties will be set to their default values when creating a new profile, and will not be modified when patching an existing profile.
Adding domains into the domains_allowed string array property will remove them automatically from the
domains_blocked string array property, and vice versa.
It is possible to partially create or update embedded objects by only specifying the properties inside the embedded objects to be modified. Other properties not mentioned in the request body remain unmodified. The following methods for partial updates are supported:
Specify a JSON object with embedded objects containing only the properties to be updated. This method is not
applicable for application/www-form-urlencoded body data (see next list item).
{"homework_schedule":{"enabled":true}} to enable the homework time schedule.{"bedtime_workdays":{"days":{"fr":true}}} to enable Friday in the bedtime schedule for
workdays.Specify the properties to be modified with dot notation in the root object.
{"homework_schedule.enabled":true} (or homework_schedule.enabled=true for
application/www-form-urlencoded body data) to enable the homework time schedule.{"bedtime_workdays.days.fr":true} to enable Friday in the bedtime schedule for workdays.It is possible to patch existing string arrays by inserting or removing individual array elements, instead of replacing the entire array.
Specify a JSON object with insert and delete properties (both optional). Property values can be single
strings, or string arrays. The values will be inserted into or deleted from the existing array respectively.
{"domains_allowed":{"insert":["example.org","example.com"],"delete":"example.net"}} to patch
the domains_allowed string array.{"homework_schedule":{"categories_blocked":{"insert":"C1","delete":"C2"}}} to patch the
category list of the homework schedule.Specify the path to the string array property with dot notation, and the property value as JSON object with
insert and delete properties.
{"homework_schedule.categories_blocked":{"insert":"C1","delete":"C2"}} to patch the category
list of the homework schedule.Specify the insert and delete properties together with the path to the array property with dot notation.
{"domains_allowed.insert":["example.org","example.com"],"domains_allowed.delete":"example.net"}
to patch the domains_allowed string array.{"homework_schedule.categories_blocked.insert":"C1","homework_schedule.categories_blocked.delete":"C2"}
to patch the category list of the homework schedule.It is possible to patch existing string arrays by toggling array elements with a patch set notation, instead of replacing the entire array.
Specify a JSON object with a patch property. Property keys are the array elements to be inserted or
deleted, property values are booleans specifying whether to insert (true), or remove (false) the key value.
{"domains_allowed":{"patch":{"example.org":true,"example.net":false}}} to patch the
domains_allowed string array.{"homework_schedule":{"categories_blocked":{"patch":{"C1":true,"C2":false}}}} to patch the
category list of the homework schedule.Specify the path to the string array property with dot notation, and the property value as JSON object with a
patch property.
{"homework_schedule.categories_blocked":{"patch":{"C1":true,"C2":false}}} to patch the
category list of the homework schedule.Specify the patch property together with the path to the array property with dot notation.
{"domains_allowed.patch":{"example.org":true,"example.net":false}} to patch the
domains_allowed string array.{"homework_schedule.categories_blocked.patch":{"C1":true,"C2":false}} to patch the category
list of the homework schedule.Specify the array elements to be inserted and deleted together with the path to the array property with dot-at notation. Use the at character "@" to separate property path and array element value. Everything after the first at character will be used as array element (including additional periods and at characters).
{"domains_allowed@example.org":true,"domains_allowed@example.net":false} to patch the
domains_allowed string array.{"homework_schedule.categories_blocked@C1":true,"homework_schedule.categories_blocked@C2":false}
to patch the category list of the homework schedule.| avatar_version | integer >= 0 A unique positive integer for the current avatar image (can be used to bypass browser cache when getting
the avatar image). Will be zero, if there is no avatar image available for the profile. Otherwise, the
value of this property does not matter, especially it cannot be used to get older versions of an avatar
image. This property is constant, it cannot be changed in an existing profile, and it cannot be specified
to create a new profile. See route |
object Bedtime settings in weekend nights (Friday to Saturday, and Saturday to Sunday). Only the keys | |
object Bedtime settings in nights before workdays (Sunday to Monday, ..., Thursday to Friday). Only the keys | |
| categories_blocked | Array of strings[ items non-empty ] The kes of all classification categories to be blocked. If this property will be set, the property |
| disabled_duration | integer >= 0 Content-based filtering will be manually disabled temporarily for this duration from now, in seconds. If
set to zero, content-based filtering has not been disabled temporarily. Changing this property will
automatically change the value of the property |
| disabled_until | integer >= 0 Content-based filtering has been manually disabled temporarily until this date and time, as Unix timestamp
in seconds (UTC, zero is 1970-01-01 at midnight). Changing this property will automatically change the
value of the property |
| domains_allowed | Array of strings[ items non-empty ] A list with domain names that will never be blocked, regardless of other filtering settings in the profile. |
| domains_blocked | Array of strings[ items non-empty ] A list with domain names that will always be blocked, regardless of other filtering settings in the profile. |
| filter_content | boolean Whether content-based filtering is enabled.
|
| filter_security | boolean Whether virus/malware filtering is enabled. |
object Homework time settings with categories to be blocked, and platforms to be allowed while activated. | |
| name | string <= 50 characters The user-defined name of the filter profile. |
Array of objects (OfftimeSchedule) [ items ] All existing offtime settings, as a dynamic array with unlimited number of elements. | |
| pause_internet | boolean Whether internet access is currently disabled completely. |
| platforms_allowed | Array of strings[ items non-empty ] The kes of all classification platforms to be allowed independently from category settings in the property
|
| platforms_blocked | Array of strings[ items non-empty ] The kes of all classification platforms to be blocked independently from category settings in the property
|
| preset | string non-empty The key of a predefined set of classification items, or the special key "custom" for a user-defined set, or
the special key "none", if content filtering is disabled (property
|
| profile_id required | integer >= 0 The unique identifier of the filter profile (used in the URLs of the middleware API). This property is constant, it cannot be changed in an existing profile, and it cannot be specified to create a new profile (the profile identifier will be set automatically). |
| safesearch_enabled | Array of strings[ items non-empty ] The kes of all safe-search engines to be enabled. If this property will be set, the property |
| user_id required | string [ 1 .. 50 ] characters The middleware identifier of the user owning the filter profile. This property is constant, it cannot be changed in an existing profile, and it cannot be specified to create a new profile (user will be identified via URL). |
{- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}{- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}Deletes the settings of an existing filter profile.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
{- "deleted": true
}Returns the settings of an existing filter profile.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
{- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}Modifies the settings of an existing filter profile.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
| oneway | boolean If set to true, the server response will not contain the specified JSON data but an empty object only. This can be used to reduce network traffic, and allows the server to perform optimizations in specific cases. |
The properties to be set for a new profile, or to be changed in an existing filter profile. Omitted properties will be set to their default values when creating a new profile, and will not be modified when patching an existing profile.
Adding domains into the domains_allowed string array property will remove them automatically from the
domains_blocked string array property, and vice versa.
It is possible to partially create or update embedded objects by only specifying the properties inside the embedded objects to be modified. Other properties not mentioned in the request body remain unmodified. The following methods for partial updates are supported:
Specify a JSON object with embedded objects containing only the properties to be updated. This method is not
applicable for application/www-form-urlencoded body data (see next list item).
{"homework_schedule":{"enabled":true}} to enable the homework time schedule.{"bedtime_workdays":{"days":{"fr":true}}} to enable Friday in the bedtime schedule for
workdays.Specify the properties to be modified with dot notation in the root object.
{"homework_schedule.enabled":true} (or homework_schedule.enabled=true for
application/www-form-urlencoded body data) to enable the homework time schedule.{"bedtime_workdays.days.fr":true} to enable Friday in the bedtime schedule for workdays.It is possible to patch existing string arrays by inserting or removing individual array elements, instead of replacing the entire array.
Specify a JSON object with insert and delete properties (both optional). Property values can be single
strings, or string arrays. The values will be inserted into or deleted from the existing array respectively.
{"domains_allowed":{"insert":["example.org","example.com"],"delete":"example.net"}} to patch
the domains_allowed string array.{"homework_schedule":{"categories_blocked":{"insert":"C1","delete":"C2"}}} to patch the
category list of the homework schedule.Specify the path to the string array property with dot notation, and the property value as JSON object with
insert and delete properties.
{"homework_schedule.categories_blocked":{"insert":"C1","delete":"C2"}} to patch the category
list of the homework schedule.Specify the insert and delete properties together with the path to the array property with dot notation.
{"domains_allowed.insert":["example.org","example.com"],"domains_allowed.delete":"example.net"}
to patch the domains_allowed string array.{"homework_schedule.categories_blocked.insert":"C1","homework_schedule.categories_blocked.delete":"C2"}
to patch the category list of the homework schedule.It is possible to patch existing string arrays by toggling array elements with a patch set notation, instead of replacing the entire array.
Specify a JSON object with a patch property. Property keys are the array elements to be inserted or
deleted, property values are booleans specifying whether to insert (true), or remove (false) the key value.
{"domains_allowed":{"patch":{"example.org":true,"example.net":false}}} to patch the
domains_allowed string array.{"homework_schedule":{"categories_blocked":{"patch":{"C1":true,"C2":false}}}} to patch the
category list of the homework schedule.Specify the path to the string array property with dot notation, and the property value as JSON object with a
patch property.
{"homework_schedule.categories_blocked":{"patch":{"C1":true,"C2":false}}} to patch the
category list of the homework schedule.Specify the patch property together with the path to the array property with dot notation.
{"domains_allowed.patch":{"example.org":true,"example.net":false}} to patch the
domains_allowed string array.{"homework_schedule.categories_blocked.patch":{"C1":true,"C2":false}} to patch the category
list of the homework schedule.Specify the array elements to be inserted and deleted together with the path to the array property with dot-at notation. Use the at character "@" to separate property path and array element value. Everything after the first at character will be used as array element (including additional periods and at characters).
{"domains_allowed@example.org":true,"domains_allowed@example.net":false} to patch the
domains_allowed string array.{"homework_schedule.categories_blocked@C1":true,"homework_schedule.categories_blocked@C2":false}
to patch the category list of the homework schedule.| avatar_version | integer >= 0 A unique positive integer for the current avatar image (can be used to bypass browser cache when getting
the avatar image). Will be zero, if there is no avatar image available for the profile. Otherwise, the
value of this property does not matter, especially it cannot be used to get older versions of an avatar
image. This property is constant, it cannot be changed in an existing profile, and it cannot be specified
to create a new profile. See route |
object Bedtime settings in weekend nights (Friday to Saturday, and Saturday to Sunday). Only the keys | |
object Bedtime settings in nights before workdays (Sunday to Monday, ..., Thursday to Friday). Only the keys | |
| categories_blocked | Array of strings[ items non-empty ] The kes of all classification categories to be blocked. If this property will be set, the property |
| disabled_duration | integer >= 0 Content-based filtering will be manually disabled temporarily for this duration from now, in seconds. If
set to zero, content-based filtering has not been disabled temporarily. Changing this property will
automatically change the value of the property |
| disabled_until | integer >= 0 Content-based filtering has been manually disabled temporarily until this date and time, as Unix timestamp
in seconds (UTC, zero is 1970-01-01 at midnight). Changing this property will automatically change the
value of the property |
| domains_allowed | Array of strings[ items non-empty ] A list with domain names that will never be blocked, regardless of other filtering settings in the profile. |
| domains_blocked | Array of strings[ items non-empty ] A list with domain names that will always be blocked, regardless of other filtering settings in the profile. |
| filter_content | boolean Whether content-based filtering is enabled.
|
| filter_security | boolean Whether virus/malware filtering is enabled. |
object Homework time settings with categories to be blocked, and platforms to be allowed while activated. | |
| name | string <= 50 characters The user-defined name of the filter profile. |
Array of objects (OfftimeSchedule) [ items ] All existing offtime settings, as a dynamic array with unlimited number of elements. | |
| pause_internet | boolean Whether internet access is currently disabled completely. |
| platforms_allowed | Array of strings[ items non-empty ] The kes of all classification platforms to be allowed independently from category settings in the property
|
| platforms_blocked | Array of strings[ items non-empty ] The kes of all classification platforms to be blocked independently from category settings in the property
|
| preset | string non-empty The key of a predefined set of classification items, or the special key "custom" for a user-defined set, or
the special key "none", if content filtering is disabled (property
|
| profile_id required | integer >= 0 The unique identifier of the filter profile (used in the URLs of the middleware API). This property is constant, it cannot be changed in an existing profile, and it cannot be specified to create a new profile (the profile identifier will be set automatically). |
| safesearch_enabled | Array of strings[ items non-empty ] The kes of all safe-search engines to be enabled. If this property will be set, the property |
| user_id required | string [ 1 .. 50 ] characters The middleware identifier of the user owning the filter profile. This property is constant, it cannot be changed in an existing profile, and it cannot be specified to create a new profile (user will be identified via URL). |
{- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}{- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}Creates a new filter profile in the user account with the identifier specified in the URL. The filter profile must not exist yet.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
| oneway | boolean If set to true, the server response will not contain the complete settings of the filter profile but a JSON
object containing the property |
The properties to be set for a new profile, or to be changed in an existing filter profile. Omitted properties will be set to their default values when creating a new profile, and will not be modified when patching an existing profile.
Adding domains into the domains_allowed string array property will remove them automatically from the
domains_blocked string array property, and vice versa.
It is possible to partially create or update embedded objects by only specifying the properties inside the embedded objects to be modified. Other properties not mentioned in the request body remain unmodified. The following methods for partial updates are supported:
Specify a JSON object with embedded objects containing only the properties to be updated. This method is not
applicable for application/www-form-urlencoded body data (see next list item).
{"homework_schedule":{"enabled":true}} to enable the homework time schedule.{"bedtime_workdays":{"days":{"fr":true}}} to enable Friday in the bedtime schedule for
workdays.Specify the properties to be modified with dot notation in the root object.
{"homework_schedule.enabled":true} (or homework_schedule.enabled=true for
application/www-form-urlencoded body data) to enable the homework time schedule.{"bedtime_workdays.days.fr":true} to enable Friday in the bedtime schedule for workdays.It is possible to patch existing string arrays by inserting or removing individual array elements, instead of replacing the entire array.
Specify a JSON object with insert and delete properties (both optional). Property values can be single
strings, or string arrays. The values will be inserted into or deleted from the existing array respectively.
{"domains_allowed":{"insert":["example.org","example.com"],"delete":"example.net"}} to patch
the domains_allowed string array.{"homework_schedule":{"categories_blocked":{"insert":"C1","delete":"C2"}}} to patch the
category list of the homework schedule.Specify the path to the string array property with dot notation, and the property value as JSON object with
insert and delete properties.
{"homework_schedule.categories_blocked":{"insert":"C1","delete":"C2"}} to patch the category
list of the homework schedule.Specify the insert and delete properties together with the path to the array property with dot notation.
{"domains_allowed.insert":["example.org","example.com"],"domains_allowed.delete":"example.net"}
to patch the domains_allowed string array.{"homework_schedule.categories_blocked.insert":"C1","homework_schedule.categories_blocked.delete":"C2"}
to patch the category list of the homework schedule.It is possible to patch existing string arrays by toggling array elements with a patch set notation, instead of replacing the entire array.
Specify a JSON object with a patch property. Property keys are the array elements to be inserted or
deleted, property values are booleans specifying whether to insert (true), or remove (false) the key value.
{"domains_allowed":{"patch":{"example.org":true,"example.net":false}}} to patch the
domains_allowed string array.{"homework_schedule":{"categories_blocked":{"patch":{"C1":true,"C2":false}}}} to patch the
category list of the homework schedule.Specify the path to the string array property with dot notation, and the property value as JSON object with a
patch property.
{"homework_schedule.categories_blocked":{"patch":{"C1":true,"C2":false}}} to patch the
category list of the homework schedule.Specify the patch property together with the path to the array property with dot notation.
{"domains_allowed.patch":{"example.org":true,"example.net":false}} to patch the
domains_allowed string array.{"homework_schedule.categories_blocked.patch":{"C1":true,"C2":false}} to patch the category
list of the homework schedule.Specify the array elements to be inserted and deleted together with the path to the array property with dot-at notation. Use the at character "@" to separate property path and array element value. Everything after the first at character will be used as array element (including additional periods and at characters).
{"domains_allowed@example.org":true,"domains_allowed@example.net":false} to patch the
domains_allowed string array.{"homework_schedule.categories_blocked@C1":true,"homework_schedule.categories_blocked@C2":false}
to patch the category list of the homework schedule.| avatar_version | integer >= 0 A unique positive integer for the current avatar image (can be used to bypass browser cache when getting
the avatar image). Will be zero, if there is no avatar image available for the profile. Otherwise, the
value of this property does not matter, especially it cannot be used to get older versions of an avatar
image. This property is constant, it cannot be changed in an existing profile, and it cannot be specified
to create a new profile. See route |
object Bedtime settings in weekend nights (Friday to Saturday, and Saturday to Sunday). Only the keys | |
object Bedtime settings in nights before workdays (Sunday to Monday, ..., Thursday to Friday). Only the keys | |
| categories_blocked | Array of strings[ items non-empty ] The kes of all classification categories to be blocked. If this property will be set, the property |
| disabled_duration | integer >= 0 Content-based filtering will be manually disabled temporarily for this duration from now, in seconds. If
set to zero, content-based filtering has not been disabled temporarily. Changing this property will
automatically change the value of the property |
| disabled_until | integer >= 0 Content-based filtering has been manually disabled temporarily until this date and time, as Unix timestamp
in seconds (UTC, zero is 1970-01-01 at midnight). Changing this property will automatically change the
value of the property |
| domains_allowed | Array of strings[ items non-empty ] A list with domain names that will never be blocked, regardless of other filtering settings in the profile. |
| domains_blocked | Array of strings[ items non-empty ] A list with domain names that will always be blocked, regardless of other filtering settings in the profile. |
| filter_content | boolean Whether content-based filtering is enabled.
|
| filter_security | boolean Whether virus/malware filtering is enabled. |
object Homework time settings with categories to be blocked, and platforms to be allowed while activated. | |
| name | string <= 50 characters The user-defined name of the filter profile. |
Array of objects (OfftimeSchedule) [ items ] All existing offtime settings, as a dynamic array with unlimited number of elements. | |
| pause_internet | boolean Whether internet access is currently disabled completely. |
| platforms_allowed | Array of strings[ items non-empty ] The kes of all classification platforms to be allowed independently from category settings in the property
|
| platforms_blocked | Array of strings[ items non-empty ] The kes of all classification platforms to be blocked independently from category settings in the property
|
| preset | string non-empty The key of a predefined set of classification items, or the special key "custom" for a user-defined set, or
the special key "none", if content filtering is disabled (property
|
| profile_id required | integer >= 0 The unique identifier of the filter profile (used in the URLs of the middleware API). This property is constant, it cannot be changed in an existing profile, and it cannot be specified to create a new profile (the profile identifier will be set automatically). |
| safesearch_enabled | Array of strings[ items non-empty ] The kes of all safe-search engines to be enabled. If this property will be set, the property |
| user_id required | string [ 1 .. 50 ] characters The middleware identifier of the user owning the filter profile. This property is constant, it cannot be changed in an existing profile, and it cannot be specified to create a new profile (user will be identified via URL). |
{- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}{- "avatar_version": 0,
- "bedtime_weekend": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "bedtime_workdays": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}, - "categories_blocked": [
- "string"
], - "disabled_duration": 0,
- "disabled_until": 0,
- "domains_allowed": [
- "string"
], - "domains_blocked": [
- "string"
], - "filter_content": true,
- "filter_security": true,
- "homework_schedule": {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399,
- "categories_blocked": [
- "string"
], - "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "safesearch_enabled": [
- "string"
]
}, - "name": "string",
- "offtime_schedules": [
- {
- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}
], - "pause_internet": true,
- "platforms_allowed": [
- "string"
], - "platforms_blocked": [
- "string"
], - "preset": "string",
- "profile_id": 0,
- "safesearch_enabled": [
- "string"
], - "user_id": "string"
}Deletes the avatar image from an existing filter profile.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
{- "deleted": true
}Returns the avatar image of an existing filter profile.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
{- "error": "string"
}Uploads a new avatar image for an existing filter profile. An existing avatar image will be replaced.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
The binary image data.
{- "avatar_version": 1
}Creates a new offtime schedule in an existing filter profile, and appends it to the array of existing offtime
schedules in the profile's array property offtime_schedules.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
The properties to be set for a new offtime schedule, or to be changed in an existing offtime schedule. Omitted properties will be set to their default values when creating a new offtime schedule, and will not be modified when patching an existing offtime schedule.
It is possible to partially create or update embedded objects by only specifying the properties inside the embedded objects to be modified. Other properties not mentioned in the request body remain unmodified. The following methods for partial updates are supported:
Specify a JSON object with embedded objects containing only the properties to be updated. This method is not
applicable for application/www-form-urlencoded body data (see next list item).
{"days":{"fr":true}} to enable Friday in the offtime schedule.Specify the properties to be modified with dot notation in the root object.
{"days.fr":true} (or days.fr=true for application/www-form-urlencoded body data) to
enable Friday in the offtime schedule.object The weekday pattern with boolean values specifying whether the offtime schedule is active for the respective day of the week. | |
| enabled | boolean Whether the offtime represented by this object is activated. Setting this property to false allows to disable this schedule without losing its time settings. |
| end | integer [ 0 .. 86399 ] Time of the day when offtime ends, as number of seconds from midnight. |
| name | string The user-defined name for this offtime schedule. |
| start | integer [ 0 .. 86399 ] Time of the day when offtime starts, as number of seconds from midnight. |
{- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}{- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}Deletes the settings of an existing offtime schedule. Deleting offtime schedules shrinks the array (following offtime schedules will decrease their array indexes).
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
| index required | integer >= 0 The array index of the offtime schedule in the profile's array property |
{- "deleted": true
}Returns the settings of an existing offtime schedule.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
| index required | integer >= 0 The array index of the offtime schedule in the profile's array property |
{- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}Modifies the settings of an existing offtime schedule.
| profile_id required | integer >= 0 The unique identifier of a filter profile. The profile identifier 0 (zero) always refers to the default filter profile of the user account. |
| index required | integer >= 0 The array index of the offtime schedule in the profile's array property |
The properties to be set for a new offtime schedule, or to be changed in an existing offtime schedule. Omitted properties will be set to their default values when creating a new offtime schedule, and will not be modified when patching an existing offtime schedule.
It is possible to partially create or update embedded objects by only specifying the properties inside the embedded objects to be modified. Other properties not mentioned in the request body remain unmodified. The following methods for partial updates are supported:
Specify a JSON object with embedded objects containing only the properties to be updated. This method is not
applicable for application/www-form-urlencoded body data (see next list item).
{"days":{"fr":true}} to enable Friday in the offtime schedule.Specify the properties to be modified with dot notation in the root object.
{"days.fr":true} (or days.fr=true for application/www-form-urlencoded body data) to
enable Friday in the offtime schedule.object The weekday pattern with boolean values specifying whether the offtime schedule is active for the respective day of the week. | |
| enabled | boolean Whether the offtime represented by this object is activated. Setting this property to false allows to disable this schedule without losing its time settings. |
| end | integer [ 0 .. 86399 ] Time of the day when offtime ends, as number of seconds from midnight. |
| name | string The user-defined name for this offtime schedule. |
| start | integer [ 0 .. 86399 ] Time of the day when offtime starts, as number of seconds from midnight. |
{- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}{- "days": {
- "fr": true,
- "mo": true,
- "sa": true,
- "su": true,
- "th": true,
- "tu": true,
- "we": true
}, - "enabled": true,
- "end": 86399,
- "name": "string",
- "start": 86399
}Deletes the settings of an existing device.
| device_id required | string non-empty The unique identifier of a device (the EDNS client identifier of the device encoding its MAC address). |
{- "deleted": true
}Returns the settings of an existing device.
| device_id required | string non-empty The unique identifier of a device (the EDNS client identifier of the device encoding its MAC address). |
{- "created_ts": 0,
- "device_id": "string",
- "mac": "string",
- "name": "string",
- "name_auto": "string",
- "notify": true,
- "producer": "string",
- "profile_id": 0,
- "type": "phone",
- "user_id": "string",
- "visited": true
}Modifies the settings of an existing device.
| device_id required | string non-empty The unique identifier of a device (the EDNS client identifier of the device encoding its MAC address). |
| oneway | boolean If set to true, the server response will not contain the specified JSON data but an empty object only. This can be used to reduce network traffic, and allows the server to perform optimizations in specific cases. |
The properties to be changed for the device. Omitted properties will not be modified.
| created_ts | integer >= 0 The Unix timestamp in seconds (UTC, zero is 1970-01-01 at midnight) of registration of the device in the PowerDNS filter platform. |
| device_id | string non-empty The unique identifier of the device (used in the URLs of the middleware API). This value is the EDNS client identifier of the device encoding its MAC address. This property is constant, it cannot be changed in an existing device. |
| mac | string The MAC address of the device, in lower-case hexadecimal notation with colons as separator characters (for example "12:34:56:78:9a:bc"). This property is constant, it cannot be changed in an existing device. |
| name | string <= 50 characters The user-defined name of the device. |
| name_auto | string The built-in name of the device as reported by the device itself. This property is constant, it cannot be changed in an existing device. |
| notify | boolean Specifies whether to send push notifications to the user if a request from this device has been blocked. |
| producer | string The name of the manufacturer of the device, if available. This property is constant, it cannot be changed in an existing device. |
| profile_id | integer >= 0 The unique identifier of the filter profile this device is associated to. Determines which internet traffic will be filtered on the device. |
| type | string Default: "desktop" Enum: "phone" "tablet" "desktop" The type of the device. |
| user_id | string [ 1 .. 50 ] characters The middleware identifier of the user owning the device. This property is constant, it cannot be changed in an existing device. |
| visited | boolean Specifies whether the user has seen the device in the web application. Can be used to highlight new devices detected by the PowerDNS filter platform. |
{- "created_ts": 0,
- "device_id": "string",
- "mac": "string",
- "name": "string",
- "name_auto": "string",
- "notify": true,
- "producer": "string",
- "profile_id": 0,
- "type": "phone",
- "user_id": "string",
- "visited": true
}{- "created_ts": 0,
- "device_id": "string",
- "mac": "string",
- "name": "string",
- "name_auto": "string",
- "notify": true,
- "producer": "string",
- "profile_id": 0,
- "type": "phone",
- "user_id": "string",
- "visited": true
}[- {
- "created_ts": 0,
- "device_id": "string",
- "mac": "string",
- "name": "string",
- "name_auto": "string",
- "notify": true,
- "producer": "string",
- "profile_id": 0,
- "type": "phone",
- "user_id": "string",
- "visited": true
}
]Returns the contents of an existing message.
| msg_id required | string non-empty The unique identifier of a message. |
{- "app": "string",
- "broadcast": true,
- "categories": [
- "string"
], - "code": "info",
- "context": "regular",
- "device_id": "string",
- "device_ip": "string",
- "device_name": "string",
- "device_type": "string",
- "domain": "string",
- "hidden": true,
- "msg_id": "string",
- "platforms": [
- "string"
], - "severity": "low",
- "text": "string",
- "timestamp": 0,
- "url": "string",
- "user_id": "string"
}Modifies the contents of an existing message.
| msg_id required | string non-empty The unique identifier of a message. |
| oneway | boolean If set to true, the server response will not contain the specified JSON data but an empty object only. This can be used to reduce network traffic, and allows the server to perform optimizations in specific cases. |
The properties to be changed in the message. Omitted properties will not be modified.
| app | string The identifier of the application that generated the message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| broadcast | boolean Whether the message has been broadcasted to all users. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| categories | Array of strings[ items non-empty ] The keys of all classification categories that caused to block the request. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| code | string (MessageCode) Enum: "info" "malware" "phishing" "botnet" "category" "domain" "new_device" "login_success" "login_failure" "login_suspicious" The identifiers for different message types.
| ||||||||||||||||||||||
| context | string Default: "regular" Enum: "regular" "homework" The filter context of the message. If set to "homework", a request has been blocked by a homework schedule. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| device_id | string The unique identifier of the device this message is associated to. Will be the empty string, if the message does not belong to a specific device. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| device_ip | string The (current) IP address of the device this message is associated to. Will be the empty string, if the message does not belong to a specific device. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| device_name | string The name of the new device. This property will only be set to a non-empty string when the message code is
| ||||||||||||||||||||||
| device_type | string The type of the new device. This property will only be set to a non-empty string when the message code is
| ||||||||||||||||||||||
| domain | string The domain name extracted from the property | ||||||||||||||||||||||
| hidden | boolean Whether the user has decided to hide the message from the view. | ||||||||||||||||||||||
| msg_id | string non-empty The unique identifier of the message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| platforms | Array of strings[ items non-empty ] The keys of all classification platforms that caused to block the request. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| severity | string Default: "low" Enum: "low" "medium" "high" An identifier for the severity of the message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| text | string An arbitrary explicit message text to be shown to the user. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| timestamp | integer >= 0 The Unix timestamp in seconds (UTC, zero is 1970-01-01 at midnight) of the event reported by this message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| url | string The URL that was blocked by a filter rule (may be an empty string). This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| user_id | string [ 1 .. 50 ] characters The middleware identifier of the user owning the message. This property is constant, it cannot be changed in an existing message. |
{- "app": "string",
- "broadcast": true,
- "categories": [
- "string"
], - "code": "info",
- "context": "regular",
- "device_id": "string",
- "device_ip": "string",
- "device_name": "string",
- "device_type": "string",
- "domain": "string",
- "hidden": true,
- "msg_id": "string",
- "platforms": [
- "string"
], - "severity": "low",
- "text": "string",
- "timestamp": 0,
- "url": "string",
- "user_id": "string"
}{- "app": "string",
- "broadcast": true,
- "categories": [
- "string"
], - "code": "info",
- "context": "regular",
- "device_id": "string",
- "device_ip": "string",
- "device_name": "string",
- "device_type": "string",
- "domain": "string",
- "hidden": true,
- "msg_id": "string",
- "platforms": [
- "string"
], - "severity": "low",
- "text": "string",
- "timestamp": 0,
- "url": "string",
- "user_id": "string"
}Deletes all messages of the user matching the specified filter criteria.
| codes | Array of strings (MessageCode) Items Enum: "info" "malware" "phishing" "botnet" "category" "domain" "new_device" "login_success" "login_failure" "login_suspicious" The message codes to be included in the filtered message list (matching message property |
| platforms | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification platforms to be included in a filtered list (matching any entry of the property
|
| categories | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification categories to be included in a filtered list (matching any entry of the property
|
| devices | Array of strings (DeviceIdList) [ items non-empty ] The identifiers of all devices to be included in a filtered list (matching the property |
| urls | Array of strings (DomainList) [ items non-empty ] The URLs to be included in the filtered message list (matching any substring of message property |
| age | integer >= 1 The maximum age of list entries to filter for, in seconds. |
{- "deleted": true
}Returns the contents of all messages of the user matching the specified filter criteria.
| codes | Array of strings (MessageCode) Items Enum: "info" "malware" "phishing" "botnet" "category" "domain" "new_device" "login_success" "login_failure" "login_suspicious" The message codes to be included in the filtered message list (matching message property |
| platforms | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification platforms to be included in a filtered list (matching any entry of the property
|
| categories | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification categories to be included in a filtered list (matching any entry of the property
|
| devices | Array of strings (DeviceIdList) [ items non-empty ] The identifiers of all devices to be included in a filtered list (matching the property |
| urls | Array of strings (DomainList) [ items non-empty ] The URLs to be included in the filtered message list (matching any substring of message property |
| age | integer >= 1 The maximum age of list entries to filter for, in seconds. |
| size | integer [ 1 .. 1000 ] Default: 50 The size of a page to be returned from a result list (the maximum number of result elements to be returned from the entire list). |
| index | integer >= 0 Default: 0 The zero-based index of a page to be returned from a result list. If set to a positive integer, skips the
specified number of pages in the result list. The size of a page will be determined with the query parameter
|
| consume | boolean If set to true, all existing messages will lose their "new" state (regardless of the passed filter options). |
[- {
- "app": "string",
- "broadcast": true,
- "categories": [
- "string"
], - "code": "info",
- "context": "regular",
- "device_id": "string",
- "device_ip": "string",
- "device_name": "string",
- "device_type": "string",
- "domain": "string",
- "hidden": true,
- "msg_id": "string",
- "platforms": [
- "string"
], - "severity": "low",
- "text": "string",
- "timestamp": 0,
- "url": "string",
- "user_id": "string"
}
]Modifies the contents of all messages of the user matching the specified filter criteria.
| codes | Array of strings (MessageCode) Items Enum: "info" "malware" "phishing" "botnet" "category" "domain" "new_device" "login_success" "login_failure" "login_suspicious" The message codes to be included in the filtered message list (matching message property |
| platforms | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification platforms to be included in a filtered list (matching any entry of the property
|
| categories | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification categories to be included in a filtered list (matching any entry of the property
|
| devices | Array of strings (DeviceIdList) [ items non-empty ] The identifiers of all devices to be included in a filtered list (matching the property |
| urls | Array of strings (DomainList) [ items non-empty ] The URLs to be included in the filtered message list (matching any substring of message property |
| age | integer >= 1 The maximum age of list entries to filter for, in seconds. |
| oneway | boolean If set to true, the server response will not contain the specified JSON data but an empty object only. This can be used to reduce network traffic, and allows the server to perform optimizations in specific cases. |
The properties to be changed in the messages. Omitted properties will not be modified.
| app | string The identifier of the application that generated the message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| broadcast | boolean Whether the message has been broadcasted to all users. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| categories | Array of strings[ items non-empty ] The keys of all classification categories that caused to block the request. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| code | string (MessageCode) Enum: "info" "malware" "phishing" "botnet" "category" "domain" "new_device" "login_success" "login_failure" "login_suspicious" The identifiers for different message types.
| ||||||||||||||||||||||
| context | string Default: "regular" Enum: "regular" "homework" The filter context of the message. If set to "homework", a request has been blocked by a homework schedule. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| device_id | string The unique identifier of the device this message is associated to. Will be the empty string, if the message does not belong to a specific device. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| device_ip | string The (current) IP address of the device this message is associated to. Will be the empty string, if the message does not belong to a specific device. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| device_name | string The name of the new device. This property will only be set to a non-empty string when the message code is
| ||||||||||||||||||||||
| device_type | string The type of the new device. This property will only be set to a non-empty string when the message code is
| ||||||||||||||||||||||
| domain | string The domain name extracted from the property | ||||||||||||||||||||||
| hidden | boolean Whether the user has decided to hide the message from the view. | ||||||||||||||||||||||
| msg_id | string non-empty The unique identifier of the message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| platforms | Array of strings[ items non-empty ] The keys of all classification platforms that caused to block the request. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| severity | string Default: "low" Enum: "low" "medium" "high" An identifier for the severity of the message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| text | string An arbitrary explicit message text to be shown to the user. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| timestamp | integer >= 0 The Unix timestamp in seconds (UTC, zero is 1970-01-01 at midnight) of the event reported by this message. This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| url | string The URL that was blocked by a filter rule (may be an empty string). This property is constant, it cannot be changed in an existing message. | ||||||||||||||||||||||
| user_id | string [ 1 .. 50 ] characters The middleware identifier of the user owning the message. This property is constant, it cannot be changed in an existing message. |
{- "app": "string",
- "broadcast": true,
- "categories": [
- "string"
], - "code": "info",
- "context": "regular",
- "device_id": "string",
- "device_ip": "string",
- "device_name": "string",
- "device_type": "string",
- "domain": "string",
- "hidden": true,
- "msg_id": "string",
- "platforms": [
- "string"
], - "severity": "low",
- "text": "string",
- "timestamp": 0,
- "url": "string",
- "user_id": "string"
}[- {
- "app": "string",
- "broadcast": true,
- "categories": [
- "string"
], - "code": "info",
- "context": "regular",
- "device_id": "string",
- "device_ip": "string",
- "device_name": "string",
- "device_type": "string",
- "domain": "string",
- "hidden": true,
- "msg_id": "string",
- "platforms": [
- "string"
], - "severity": "low",
- "text": "string",
- "timestamp": 0,
- "url": "string",
- "user_id": "string"
}
]Returns the number of existing messages of the user (optionally matching the specified filter criteria).
| codes | Array of strings (MessageCode) Items Enum: "info" "malware" "phishing" "botnet" "category" "domain" "new_device" "login_success" "login_failure" "login_suspicious" The message codes to be included in the filtered message list (matching message property |
| platforms | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification platforms to be included in a filtered list (matching any entry of the property
|
| categories | Array of strings (ClassificationKeyList) [ items non-empty ] The keys of all classification categories to be included in a filtered list (matching any entry of the property
|
| devices | Array of strings (DeviceIdList) [ items non-empty ] The identifiers of all devices to be included in a filtered list (matching the property |
| urls | Array of strings (DomainList) [ items non-empty ] The URLs to be included in the filtered message list (matching any substring of message property |
| age | integer >= 1 The maximum age of list entries to filter for, in seconds. |
{- "count": 0
}Deletes the push token of a mobile device for the user.
The push token to be deleted.
| type required | string Enum: "fcm" "apn" The type specifier of the push service provider. |
| value required | string The value of the push token. |
{- "type": "fcm",
- "value": "string"
}{- "deleted": true
}Registers the push token of a mobile device for the user.
The push token to be registered.
| type required | string Enum: "fcm" "apn" The type specifier of the push service provider. |
| value required | string The value of the push token. |
{- "type": "fcm",
- "value": "string"
}{- "error": "string"
}| from | integer >= 0 The Unix timestamp in seconds (UTC, zero is 1970-01-01 at midnight) for the beginning of the time range to filter a result list with elements containing a timestamp. |
| to | integer >= 0 The Unix timestamp in seconds (UTC, zero is 1970-01-01 at midnight) for the ending of the time range to filter a result list with elements containing a timestamp. |
| devices | Array of strings (DeviceIdList) [ items non-empty ] The identifiers of all devices to be included in a filtered list (matching the property |
| types | Array of strings (SecurityIncidentType) Items Enum: "botnet" "phishing" "malware" The incident types to be included in the filtered incident list (matching incident property |
| size | integer [ 1 .. 1000 ] Default: 50 The size of a page to be returned from a result list (the maximum number of result elements to be returned from the entire list). |
| index | integer >= 0 Default: 0 The zero-based index of a page to be returned from a result list. If set to a positive integer, skips the
specified number of pages in the result list. The size of a page will be determined with the query parameter
|
[- {
- "device_id": "string",
- "domain": "string",
- "timestamp": 0,
- "type": "botnet",
- "user_id": "string"
}
]Contains a list of devices and in what activities they are involved in among some statistical data and a
situation code. Omitting the to parameter will be interpreted as it having the value of now.
| from | integer >= 0 The Unix timestamp in seconds (UTC, zero is 1970-01-01 at midnight) for the beginning of the time range to filter a result list with elements containing a timestamp. |
| to | integer >= 0 The Unix timestamp in seconds (UTC, zero is 1970-01-01 at midnight) for the ending of the time range to filter a result list with elements containing a timestamp. |
{- "blocked_by_category": [
- {
- "count": 0,
- "id": "string"
}
], - "blocked_by_device": [
- {
- "blocked_by_type": [
- {
- "count": 0,
- "type": "botnet"
}
], - "device_id": "string"
}
], - "blocked_by_platform": [
- {
- "count": 0,
- "id": "string"
}
], - "blocked_by_type": [
- {
- "count": 0,
- "type": "botnet"
}
], - "blocked_count": 0
}Returns all personal data stored for the user in the system.
{- "devices": [
- {
- "device_id": "string",
- "mac": "12:34:56:78:9a:bc",
- "name": "string",
- "name_auto": "string"
}
], - "mail_address": "string",
- "offtime_schedules": [
- "string"
], - "phone_number": "string",
- "profiles": [
- "string"
], - "user_id": "string"
}