All pages
Powered by GitBook
1 of 25

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

ACL Profiles

Actions

Namespace reference

ACL ProfilesActionsBackend ServicesCertificatesConfigsContent Filter ProfilesContent Filter RulesData queriesDynamic RulesEdge FunctionsFlow Control PoliciesGlobal FiltersLoad BalancersLog ExportersMobile Application GroupsPlanetsProxy TemplatesRate Limit RulesSecurity AlertsSecurity PoliciesServer GroupsTagsToolsUsers

Backend Services

Log Exporters

Certificates

Planets

Data queries

Two of the Data queries routes below manage . The rest are for retrieving traffic data; for instructions on using them, see .

Tools

quarantined traffic sources
API access to traffic data

Global Filters

Content Filter Rules

Dynamic Rules

Mobile Application Groups

Users

Security Policies

Configs

Flow Control Policies

Security Alerts

Rate Limit Rules

Content Filter Profiles

Edge Functions

Server Groups

Proxy Templates

Load Balancers

Prerequisites

The {config} API parameter is discussed here.

Load balancer administration is discussed here. The discussion below assumes familiarity with it.

Special considerations when using the API

Multi-regional configuration

As explained , when a Link11 load balancer supports a multi-regional planet, admins can (if desired) configure traffic routing.

The API provides additional granularity beyond the configuration available in the web console:

  • In the UI, the load balancer is treated as a single instance. However, this "one" load balancer is conceptual: it represents multiple physical instances, running simultaneously in different cities. The API provides the ability to configure each city separately, if desired.

  • In the UI, the Preferred datacenter control displays a list of datacenters where Link11 WAAP has been deployed. In the API, this list is provided in the upstream_regions parameter, which is returned when calling GET /api/v4.3/conf/{config}/load-balancers/regions.

  • In the UI, one Preferred datacenter can be selected, which will be applied to all cities. In the API, different datacenters can be specified for different cities, by calling POST /api/v4.3/conf/{config}/load-balancers/regions.

When calling POST /api/v4.3/conf/{config}/load-balancers/regions, all desired preferences should be specified. All unspecified regions will be set to the default preference of automatic .

If an incorrect preferred datacenter (one where L11WAAP is not running) is specified, this action will be rejected, and the previous selection will remain in effect.

API overview

To retrieve information about all load balancers:

GET /api/v4.3/conf/{config}/load-balancers

To add a certificate:

PUT /api/v4.3/conf/{config}/load-balancers/{entry_name}/certificates/{certificate_id}

To remove a certificate:

DELETE /api/v4.3/conf/{config}/load-balancers/{entry_name}/certificates

To get the list of Link11 WAAP datacenters, and each city's current preference:

GET /api/v4.3/conf/{config}/load-balancers/regions

To set preferred datacenters for each city:

POST /api/v4.3/conf/{config}/load-balancers/regions

Operations

here

Get ACL Profiles

get

Get all ACL Profiles in a configuration

Path parameters
configstringRequired
Responses
200

ACL Profiles retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/acl-profiles

Modify ACL Profiles

put

Updates an existing set of ACL Profiles for a configuration

Path parameters
configstringRequired
Bodyobject · ACLProfile[]
actionstringOptional
allowstring[]Optional
allow_botstring[]Optional
denystring[]Optional
deny_botstring[]Optional
descriptionstringOptional
force_denystring[]Optional
idstringRequired
namestringRequired
passthroughstring[]Optional
tagsstring[]Optional
Responses
200

ACL Profiles updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/acl-profiles

Create ACL Profiles

post

Create a complete set of ACL Profiles for a configuration

Path parameters
configstringRequired
Bodyobject · ACLProfile[]
actionstringOptional
allowstring[]Optional
allow_botstring[]Optional
denystring[]Optional
deny_botstring[]Optional
descriptionstringOptional
force_denystring[]Optional
idstringRequired
namestringRequired
passthroughstring[]Optional
tagsstring[]Optional
Responses
201

ACL Profiles created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/acl-profiles

Delete ACL Profiles

delete

Delete all ACL Profiles in a configuration

Path parameters
configstringRequired
Responses
200

ACL Profiles deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/acl-profiles

Get single ACL Profile

get

Get an individual ACL Profile (not the entire set) from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

ACL Profile retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/acl-profiles/{entry_id}

Modify a single ACL Profile

put

Update an individual ACL Profile within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionstringOptional
allowstring[]Optional
allow_botstring[]Optional
denystring[]Optional
deny_botstring[]Optional
descriptionstringOptional
force_denystring[]Optional
idstringRequired
namestringRequired
passthroughstring[]Optional
tagsstring[]Optional
Responses
200

ACL Profile updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/acl-profiles/{entry_id}

Create single ACL Profile

post

Create an individual ACL Profile within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionstringOptional
allowstring[]Optional
allow_botstring[]Optional
denystring[]Optional
deny_botstring[]Optional
descriptionstringOptional
force_denystring[]Optional
idstringRequired
namestringRequired
passthroughstring[]Optional
tagsstring[]Optional
Responses
201

ACL Profile created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/acl-profiles/{entry_id}

Delete single ACL Profile

delete

Delete an individual ACL Profile (not the entire set) from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

ACL Profile deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/acl-profiles/{entry_id}

Get ACL Profiles version list

get

Get list of versions of ACL Profiles in a configuration

Path parameters
configstringRequired
Responses
200

ACL Profiles version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/acl-profiles/versions

Get version of ACL Profile

get

Get a specific version of an ACL Profile

Path parameters
configstringRequired
versionstringRequired
Responses
200

ACL Profile retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/acl-profiles/versions/{version}

Revert an ACL Profile to the specified version

put

Set a previous ACL Profile version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

ACL Profile reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/acl-profiles/versions/{version}/revert

Get Actions

get

Get all Actions in a configuration

Path parameters
configstringRequired
Responses
200

Actions retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/actions

Modify Actions

put

Update an existing set of Actions for a configuration

Path parameters
configstringRequired
Bodyobject · Action[]
descriptionstringOptional
idstringRequired
namestring · min: 1Required
paramsany ofOptionalDefault: {}
or
objectOptional
tagsstring[]Optional

List of tags to apply

Default: []
typeall ofRequired

Need to be one of predefined strings

string · enumOptionalPossible values:
Responses
200

Actions updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/actions

Create Actions

post

Create complete set of Actions for a configuration

Path parameters
configstringRequired
Bodyobject · Action[]
descriptionstringOptional
idstringRequired
namestring · min: 1Required
paramsany ofOptionalDefault: {}
or
objectOptional
tagsstring[]Optional

List of tags to apply

Default: []
typeall ofRequired

Need to be one of predefined strings

string · enumOptionalPossible values:
Responses
201

Actions created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/actions

Delete Actions

delete

Delete all Actions in a configuration

Path parameters
configstringRequired
Responses
200

Actions deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/actions

Get single Action

get

Get an individual Action from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Action retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/actions/{entry_id}

Modify a single Action

put

Update an individual Action within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
descriptionstringOptional
idstringRequired
namestring · min: 1Required
paramsany ofOptionalDefault: {}
or
objectOptional
tagsstring[]Optional

List of tags to apply

Default: []
typeall ofRequired

Need to be one of predefined strings

string · enumOptionalPossible values:
Responses
200

Action updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/actions/{entry_id}

Create single Action

post

Create an individual Action within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
descriptionstringOptional
idstringRequired
namestring · min: 1Required
paramsany ofOptionalDefault: {}
or
objectOptional
tagsstring[]Optional

List of tags to apply

Default: []
typeall ofRequired

Need to be one of predefined strings

string · enumOptionalPossible values:
Responses
200

Action created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/actions/{entry_id}

Delete single Action

delete

Delete an individual Action from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Action deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/actions/{entry_id}

Get Actions version list

get

Get list of versions of Actions in a configuration

Path parameters
configstringRequired
Responses
200

Actions version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/actions/versions

Get version of Actions

get

Get a specific version of an Action

Path parameters
configstringRequired
versionstringRequired
Responses
200

Action version retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/actions/versions/{version}

Revert Actions to the specified version

put

Set a previous Actions version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Actions reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/actions/versions/{version}/revert

Get Planet

get

Get planet-wide settings and values

Path parameters
configanyRequired
Responses
200

Planet info successfully retrieved

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/planets

Modify Planet

put

Modify settings of a planet

Path parameters
configstringRequired
entry_idstringRequired

Planet ID

Body
namestringRequired
Responses
200

Planet updated successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.0/conf/{config}/planets/{entry_id}

Get traffic data from logs

get

Retrieve traffic data using 'filters' parameter, explained at https://gb.docs.reblaze.com/reference-information/api/api-access-to-traffic-data

Query parameters
limitinteger · min: 1 · max: 2500OptionalDefault: 100
offsetintegerOptionalDefault: 0
filtersstringOptional

Filters for request in format selected below (JSON or query string)

Example: {"AND":[{"field":"timestamp","op":"between","value":["2024-06-06 09:31:00","2024-06-06 09:36:00"]},{"field":"status","op":"eq","value":301}]}
debugbooleanOptional

if set to true the request will return rendered SQL without running it, for debug purposes

Example: true | false
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
syntaxstringOptional

syntax of query

Example: json
Responses
200

Logs has been received successfully

application/json
4XX

Misconfigured request

application/json
get
/api/v4.0/data/logs
parameters
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
syntaxstringOptional

syntax of query

Example: json
parameters
/api/v4.0/data/logs

Get quarantined list

get

Get quarantined list

Query parameters
configstringOptional
idsstring[]Optional
rule_idsstring[]Optional
Header parameters
providerstring · enumRequired

Database to get data from

Example: mongodbPossible values:
syntaxstring · enumRequired

Syntax of query

Example: string_queryPossible values:
Responses
200

Query for quarantined has been run successfully

application/json
4XX

Misconfigured request

application/json
get
/api/v4.0/data/quarantined

Delete record(s) from quarantined list

delete

Delete record(s) from quarantined list

Header parameters
providerstring · enumRequired

Database to get data from

Example: mongodbPossible values:
syntaxstring · enumRequired

Syntax of query

Example: jsonPossible values:
Body
configstringOptional
idsstring[]Optional
rule_idsstring[]Optional
Responses
200

Record(s) was/were successfully deleted

application/json
4XX

Misconfigured request

application/json
delete
/api/v4.0/data/quarantined

Get traffic stats

get

Get stats (time_period, counter, hostname, bandwidth, latency) using 'filters' parameter, explained at https://gb.docs.reblaze.com/reference-information/api/api-access-to-traffic-data

Query parameters
filtersstringOptional

Filters for request in format selected below (JSON or query string)

Example: {"AND":[{"field":"timestamp","op":"between","value":["2024-06-06 09:31:00","2024-06-06 09:36:00"]},{"field":"status","op":"eq","value":301}]}
debugbooleanOptional

if set to true the request will return rendered SQL without running it, for debug purposes

Example: true | false
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
syntaxstring · enumOptional

syntax of query

Example: jsonPossible values:
Responses
200

Stats has been received successfully

application/json
4XX

Misconfigured request

application/json
get
/api/v4.0/data/stats
parameters
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
parameters
/api/v4.0/data/stats

Get traffic timeline

get

Get timeline (time_period, sessions, remote_addr, all_hits, blocked, origin_blocked, challenge, is_human, statuses stats, origin statuses stats, bytes_sent) using 'filters' parameter, explained at https://gb.docs.reblaze.com/reference-information/api/api-access-to-traffic-data

Query parameters
filtersstringOptional

Filters for request in format selected below (JSON or query string)

Example: {"AND":[{"field":"timestamp","op":"between","value":["2024-06-06 09:31:00","2024-06-06 09:36:00"]},{"field":"status","op":"eq","value":301}]}
debugbooleanOptional

if set to true the request will return rendered SQL without running it, for debug purposes

Example: true | false
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
syntaxstringOptional

syntax of query

Example: json
Responses
200

Timeline has been received successfully

application/json
4XX

Misconfigured request

application/json
get
/api/v4.0/data/timeline
parameters
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
syntaxstringOptional

syntax of query

Example: json
parameters
/api/v4.0/data/timeline

Convert 'filters' query string to JSON

post

Convert a query string (as used in the UI Dashboard and Events Log) into JSON format.

Body
queryone ofRequired
stringOptional
or
objectOptional
Responses
200

Filter string has been converted successfully

application/json
Responseobject
4XX

Misconfigured request

application/json
post
/api/v4.0/data/timeline/parse

Get "top" traffic data

get

Get topx stats using 'filters' parameter, explained at https://gb.docs.reblaze.com/reference-information/api/api-access-to-traffic-data

Query parameters
filtersstringOptional

Filters for request in format selected below (JSON or query string)

Example: {"AND":[{"field":"timestamp","op":"between","value":["2024-06-06 09:31:00","2024-06-06 09:36:00"]},{"field":"status","op":"eq","value":301}]}
debugbooleanOptional

if set to true the request will return rendered SQL without running it, for debug purposes

Example: true | false
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
syntaxstring · enumOptional

syntax of query

Example: jsonPossible values:
Responses
200

Topx has been received successfully

application/json
4XX

Misconfigured request

application/json
get
/api/v4.0/data/topx
parameters
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
parameters
/api/v4.0/data/topx

Get Global Filters

get

Get all Global Filters in a configuration

Path parameters
configstringRequired
Responses
200

Global Filters retrieved successfully

application/json
get
/api/v4.0/conf/{config}/global-filters
200

Global Filters retrieved successfully

Modify Global Filters

put

Update an existing set of Global Filters for a configuration

Path parameters
configstringRequired
Bodyobject · GlobalFilter[]
actionanyOptional
activebooleanRequired
descriptionstringOptional
idstringRequired
mdatestringRequired
namestringRequired
ruleany ofOptionalDefault: {}
anyOptional
or
sourcestringRequired
tagsstring[]Optional
Responses
200

Global Filters updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/global-filters

Create Global Filters

post

Create a complete set of Global Filters for a configuration

Path parameters
configstringRequired
Bodyobject · GlobalFilter[]
actionanyOptional
activebooleanRequired
descriptionstringOptional
idstringRequired
mdatestringRequired
namestringRequired
ruleany ofOptionalDefault: {}
anyOptional
or
sourcestringRequired
tagsstring[]Optional
Responses
201

Global Filters created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/global-filters

Delete Global Filters

delete

Delete all Global Filters in a configuration

Path parameters
configstringRequired
Responses
200

Global Filters deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/global-filters

Get specific Global Filter

get

Get a Global Filter from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Global Filter retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/global-filters/{entry_id}

Modify a single Global Filter

put

Update an individual Global Filter within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionanyOptional
activebooleanRequired
descriptionstringOptional
idstringRequired
mdatestringRequired
namestringRequired
ruleany ofOptionalDefault: {}
anyOptional
or
sourcestringRequired
tagsstring[]Optional
Responses
200

Global Filter updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/global-filters/{entry_id}

Create single Global Filter

post

Create an individual Global Filter within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionanyOptional
activebooleanRequired
descriptionstringOptional
idstringRequired
mdatestringRequired
namestringRequired
ruleany ofOptionalDefault: {}
anyOptional
or
sourcestringRequired
tagsstring[]Optional
Responses
201

Global Filter created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/global-filters/{entry_id}

Delete single Global Filter

delete

Delete an individual Global Filter from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Global Filter deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/global-filters/{entry_id}

Get Global Filters version list

get

Get list of versions of Global Filters in a configuration

Path parameters
configstringRequired
Responses
200

Global Filters version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/global-filters/versions

Get version of Global Filter

get

Get a specific version of a Global Filter

Path parameters
configstringRequired
versionstringRequired
Responses
200

Global Filter retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/global-filters/versions/{version}

Revert a Global Filter to the specified version

put

Set a previous Global Filter version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Global Filter reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/global-filters/versions/{version}/revert

Get Content Filter Rules

get

Get all Content Filter Rules in a configuration

Path parameters
configstringRequired
Responses
200

Content Filter Rules retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/content-filter-rules

Modify Content Filter Rules

put

Update an existing set of Content Filter Rules for a configuration

Path parameters
configstringRequired
Bodyobject · ContentFilterRule[]
categorystringRequired

Category of the rule

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
idstringRequired
msgstringRequired

Log message for this rule

namestring · min: 1Required
operandstring · min: 1Required

Matching domain(s) regex

riskinteger · min: 1 · max: 5Required

Risk level of this rule, between 1 (lowest risk) and 5 (highest risk)

subcategorystringRequired

Subcategory of the rule

tagsstring[]Optional

List of tags to apply

Default: []
Responses
200

Content Filter Rules updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/content-filter-rules

Create Content Filter Rules

post

Create a complete set of Content Filter Rules for a configuration

Path parameters
configstringRequired
Bodyobject · ContentFilterRule[]
categorystringRequired

Category of the rule

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
idstringRequired
msgstringRequired

Log message for this rule

namestring · min: 1Required
operandstring · min: 1Required

Matching domain(s) regex

riskinteger · min: 1 · max: 5Required

Risk level of this rule, between 1 (lowest risk) and 5 (highest risk)

subcategorystringRequired

Subcategory of the rule

tagsstring[]Optional

List of tags to apply

Default: []
Responses
201

Content Filter Rules created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/content-filter-rules

Delete Content Filter Rules

delete

Delete all Content Filter Rules in a configuration

Path parameters
configstringRequired
Responses
200

Content Filter Rules deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/content-filter-rules

Get single Content Filter Rule

get

Get a Content Filter Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Content Filter Rule retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/content-filter-rules/{entry_id}

Modify a single Content Filter Rule

put

Update an individual Content Filter Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
categorystringRequired

Category of the rule

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
idstringRequired
msgstringRequired

Log message for this rule

namestring · min: 1Required
operandstring · min: 1Required

Matching domain(s) regex

riskinteger · min: 1 · max: 5Required

Risk level of this rule, between 1 (lowest risk) and 5 (highest risk)

subcategorystringRequired

Subcategory of the rule

tagsstring[]Optional

List of tags to apply

Default: []
Responses
200

Content Filter Rule updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/content-filter-rules/{entry_id}

Create single Content Filter Rule

post

Create an individual Content Filter Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
categorystringRequired

Category of the rule

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
idstringRequired
msgstringRequired

Log message for this rule

namestring · min: 1Required
operandstring · min: 1Required

Matching domain(s) regex

riskinteger · min: 1 · max: 5Required

Risk level of this rule, between 1 (lowest risk) and 5 (highest risk)

subcategorystringRequired

Subcategory of the rule

tagsstring[]Optional

List of tags to apply

Default: []
Responses
201

Content Filter Rule created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/content-filter-rules/{entry_id}

Delete single Content Filter Rule

delete

Delete an individual Content Filter Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Content Filter Rule deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/content-filter-rules/{entry_id}

Get Content Filter Rules version list

get

Get list of versions of Content Filter Rules in a configuration

Path parameters
configstringRequired
Responses
200

Content Filter Rules version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/content-filter-rules/versions

Get version of Content Filter Rule set

get

Get a specific version of a Content Filter Rule set

Path parameters
configstringRequired
versionstringRequired
Responses
200

Content Filter Rule set retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/content-filter-rules/versions/{version}

Revert a Content Filter Rule to the specified version

put

Set a previous Content Filter Rule version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Content Filter Rule reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/content-filter-rules/versions/{version}/revert

Get list of users

get
Responses
200

Users were retrieved successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/accounts/users

Create new user

post

Create new user

Body
aclinteger · max: 20Required
contact_namestringRequired
emailstring · emailRequired
mobilestringRequired
org_idstringRequired
Responses
200

New user was created successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/accounts/users

Get user details

get
Path parameters
entry_idstringRequired

Account ID

Responses
200

User details were retrieved successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/accounts/{entry_id}

Modify user

put

Update details of a user

Path parameters
entry_idstringRequired

Account ID

Body
aclinteger · max: 20Required
contact_namestringRequired
mobilestringRequired
Responses
200

User updated successfully

application/json
Responseany
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.0/accounts/{entry_id}

No content

Delete user

delete

Delete user by user id

Path parameters
entry_idstringRequired

Account ID

Responses
200

User was deleted successfully

application/json
Responseany
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
delete
/api/v4.0/accounts/{entry_id}

No content

Get all API keys associated with the planet

get
Responses
200

API keys received successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/accounts/api-keys

Delete an API key

put

Revokes API key and makes it unavailable for use

Path parameters
entry_idstringRequired

API key ID

Responses
200

API key was revoked successfully

application/json
Responseany
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.0/accounts/api-keys/{entry_id}

No content

Get API keys for a user

get
Path parameters
entry_idstringRequired

Account ID

Responses
200

API keys for specified user were retrieved successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/accounts/{entry_id}/api-keys

Generate an API key for a user

post
Path parameters
entry_idstringRequired

Account ID

Body
titlestring · min: 1Required
Responses
200

API key for specified user was generated successfully

application/json
Responseany
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/accounts/{entry_id}/api-keys

No content

Get SSO Config for the planet

get
Responses
200

SSO config retrieved successfully

application/json
400

Bad Request

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/accounts/sso

Add/Update SSO Config of OAuth2 protocol for the planet

post
Body
enabledbooleanOptional

Is that profile enabled or not.

Default: false
paramsall ofRequired

SSO provider OAuth2 protocol parameters

protocolall ofRequired

SSO protocol

string · enumOptional

An enumeration.

Possible values:
providerall ofRequired

SSO provider

string · enumOptional

An enumeration.

Possible values:
titlestringRequired

Title of the SSO profile that will be displayed on the login page.

Responses
201

SSO config was updated successfully

application/json
400

Bad Request

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/accounts/sso/oauth2

Add/Update SSO Config of SAML2 protocol for the planet

post
Body
enabledbooleanOptional

Is that profile enabled or not.

Default: false
paramsall ofRequired

SSO provider SAML2 protocol parameters

protocolall ofRequired

SSO protocol

string · enumOptional

An enumeration.

Possible values:
providerall ofRequired

SSO provider

string · enumOptional

An enumeration.

Possible values:
titlestringRequired

Title of the SSO profile that will be displayed on the login page.

Responses
201

SSO config was updated successfully

application/json
400

Bad Request

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/accounts/sso/saml2

Get Configurations

get

Get detailed list of existing configurations

Responses
200

List of configurations was retrieved successfully

application/json
get
/api/v4.0/conf/configs
200

List of configurations was retrieved successfully

Get a Configuration

get

Retrieve a complete configuration

Path parameters
configstringRequired
Responses
200

Configuration retrieved successfully

application/json
Responseany
422

Validation Error

application/json
get
/api/v4.0/conf/configs/{config}

No content

Get Versions of a Config

get

Get all versions of a given configuration

Path parameters
configstringRequired
Responses
200

Config versions retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/configs/{config}/versions

Revert a Config to a Version

put

Set a previous version of a configuration to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Configuration reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/configs/{config}/versions/{version}/revert

Modify Content Filter Profiles

put

Update an existing set of Content Filter Profiles for a configuration

Path parameters
configstringRequired
Bodyobject · ContentFilterProfile[]
actionany ofOptionalDefault: ""
stringOptional
activestring[]Optional

List of tags to apply

Default: []
allsectionsany ofOptional
argsall ofRequired
content_typeany ofOptional

List of content types

Default: []
string[]Optional
cookiesall ofRequired
decodingall ofRequired
descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
graphql_pathany ofOptional

A field in a JSON that contains GraphQL query that need to be parsed. The value should be passed in JSONPath format. It supports regex for values as well.

Default: ""
stringOptional
headersall ofRequired
idstringRequired
ignorestring[]Optional

List of tags to apply

Default: []
ignore_alphanumbooleanRequired

When true, arguments, headers or cookies, which contain only alpha numeric characters, will be ignored

ignore_bodyany ofOptionalDefault: false
booleanOptional
masking_seedstringRequired

A seed which will be used in the masking process

namestring · min: 1Required
pathall ofRequired
reportstring[]Optional

List of tags to apply

Default: []
tagsstring[]Optional

List of tags to apply

Default: []
Responses
200

Content Filter Profiles updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/content-filter-profiles

Modify a single Content Filter Profile

put

Update an individual Content Filter Profile within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionany ofOptionalDefault: ""
stringOptional
activestring[]Optional

List of tags to apply

Default: []
allsectionsany ofOptional
argsall ofRequired
content_typeany ofOptional

List of content types

Default: []
string[]Optional
cookiesall ofRequired
decodingall ofRequired
descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
graphql_pathany ofOptional

A field in a JSON that contains GraphQL query that need to be parsed. The value should be passed in JSONPath format. It supports regex for values as well.

Default: ""
stringOptional
headersall ofRequired
idstringRequired
ignorestring[]Optional

List of tags to apply

Default: []
ignore_alphanumbooleanRequired

When true, arguments, headers or cookies, which contain only alpha numeric characters, will be ignored

ignore_bodyany ofOptionalDefault: false
booleanOptional
masking_seedstringRequired

A seed which will be used in the masking process

namestring · min: 1Required
pathall ofRequired
reportstring[]Optional

List of tags to apply

Default: []
tagsstring[]Optional

List of tags to apply

Default: []
Responses
200

Content Filter Profile updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/content-filter-profiles/{entry_id}

Create single Content Filter Profile

post

Create an individual Content Filter Profile within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionany ofOptionalDefault: ""
stringOptional
activestring[]Optional

List of tags to apply

Default: []
allsectionsany ofOptional
argsall ofRequired
content_typeany ofOptional

List of content types

Default: []
string[]Optional
cookiesall ofRequired
decodingall ofRequired
descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
graphql_pathany ofOptional

A field in a JSON that contains GraphQL query that need to be parsed. The value should be passed in JSONPath format. It supports regex for values as well.

Default: ""
stringOptional
headersall ofRequired
idstringRequired
ignorestring[]Optional

List of tags to apply

Default: []
ignore_alphanumbooleanRequired

When true, arguments, headers or cookies, which contain only alpha numeric characters, will be ignored

ignore_bodyany ofOptionalDefault: false
booleanOptional
masking_seedstringRequired

A seed which will be used in the masking process

namestring · min: 1Required
pathall ofRequired
reportstring[]Optional

List of tags to apply

Default: []
tagsstring[]Optional

List of tags to apply

Default: []
Responses
201

Content Filter Profile created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/content-filter-profiles/{entry_id}

Delete single Content Filter Profile

delete

Delete an individual Content Filter Profile from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Content Filter Profile deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/content-filter-profiles/{entry_id}

Get version of Content Filter Profile

get

Get a specific version of a Content Filter Profile

Path parameters
configstringRequired
versionstringRequired
Responses
200

Content Filter Profile retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/content-filter-profiles/versions/{version}

Get Edge Functions

get

Get all Edge Functions in a configuration

Path parameters
configstringRequired
Responses
200

Edge Functions retrieved successfully

application/json
get
/api/v4.0/conf/{config}/edge-functions
200

Edge Functions retrieved successfully

Modify Edge Functions

put

Update an existing set of Edge Functions for a configuration

Path parameters
configstringRequired
Bodyobject · EdgeFunction[]
codestringRequired

Edge Function Code

descriptionany ofOptionalDefault: ""
stringOptional
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9_]*$
namestringRequired
phasestring · enumRequiredPossible values:
Responses
200

Edge Functions updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/edge-functions

Create Edge Functions

post

Create a complete set of Edge Functions for a configuration

Path parameters
configstringRequired
Bodyobject · EdgeFunction[]
codestringRequired

Edge Function Code

descriptionany ofOptionalDefault: ""
stringOptional
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9_]*$
namestringRequired
phasestring · enumRequiredPossible values:
Responses
201

Edge Functions created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/edge-functions

Delete Edge Functions

delete

Delete all Edge Functions in a configuration

Path parameters
configstringRequired
Responses
200

Edge Functions deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/edge-functions

Get specific Edge Function

get

Get an Edge Function from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Edge Function retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/edge-functions/{entry_id}

Modify a single Edge Function

put

Update an individual Edge Function within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
codestringRequired

Edge Function Code

descriptionany ofOptionalDefault: ""
stringOptional
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9_]*$
namestringRequired
phasestring · enumRequiredPossible values:
Responses
200

Edge Function updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/edge-functions/{entry_id}

Create single Edge Function

post

Create an individual Edge Function within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
codestringRequired

Edge Function Code

descriptionany ofOptionalDefault: ""
stringOptional
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9_]*$
namestringRequired
phasestring · enumRequiredPossible values:
Responses
201

Edge Function created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/edge-functions/{entry_id}

Delete single Edge Function

delete

Delete an individual Edge Function from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Edge Function deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/edge-functions/{entry_id}

Get Edge Functions version list

get

Get list of versions of Edge Functions in a configuration

Path parameters
configstringRequired
Responses
200

Edge Functions version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/edge-functions/versions

Get version of Edge Function

get

Get a specific version of an Edge Function

Path parameters
configstringRequired
versionstringRequired
Responses
200

Edge Function retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/edge-functions/versions/{version}

Revert an Edge Function to the specified version

put

Set a previous Edge Function version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Edge Function reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/edge-functions/versions/{version}/revert
PARAMETERS /api/v4.0/data/logs HTTP/1.1
Host: 
Accept: */*
PARAMETERS /api/v4.0/data/stats HTTP/1.1
Host: 
Accept: */*
PARAMETERS /api/v4.0/data/timeline HTTP/1.1
Host: 
Accept: */*
PARAMETERS /api/v4.0/data/topx HTTP/1.1
Host: 
Accept: */*
GET /api/v4.0/conf/{config}/acl-profiles HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "text",
      "allow": [
        "text"
      ],
      "allow_bot": [
        "text"
      ],
      "deny": [
        "text"
      ],
      "deny_bot": [
        "text"
      ],
      "description": "text",
      "force_deny": [
        "text"
      ],
      "id": "text",
      "name": "text",
      "passthrough": [
        "text"
      ],
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/acl-profiles HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 201

[
  {
    "action": "text",
    "allow": [
      "text"
    ],
    "allow_bot": [
      "text"
    ],
    "deny": [
      "text"
    ],
    "deny_bot": [
      "text"
    ],
    "description": "text",
    "force_deny": [
      "text"
    ],
    "id": "text",
    "name": "text",
    "passthrough": [
      "text"
    ],
    "tags": [
      "text"
    ]
  }
]
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/acl-profiles HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 201

[
  {
    "action": "text",
    "allow": [
      "text"
    ],
    "allow_bot": [
      "text"
    ],
    "deny": [
      "text"
    ],
    "deny_bot": [
      "text"
    ],
    "description": "text",
    "force_deny": [
      "text"
    ],
    "id": "text",
    "name": "text",
    "passthrough": [
      "text"
    ],
    "tags": [
      "text"
    ]
  }
]
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/acl-profiles HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/acl-profiles/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "action": "text",
  "allow": [
    "text"
  ],
  "allow_bot": [
    "text"
  ],
  "deny": [
    "text"
  ],
  "deny_bot": [
    "text"
  ],
  "description": "text",
  "force_deny": [
    "text"
  ],
  "id": "text",
  "name": "text",
  "passthrough": [
    "text"
  ],
  "tags": [
    "text"
  ]
}
PUT /api/v4.0/conf/{config}/acl-profiles/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 199

{
  "action": "text",
  "allow": [
    "text"
  ],
  "allow_bot": [
    "text"
  ],
  "deny": [
    "text"
  ],
  "deny_bot": [
    "text"
  ],
  "description": "text",
  "force_deny": [
    "text"
  ],
  "id": "text",
  "name": "text",
  "passthrough": [
    "text"
  ],
  "tags": [
    "text"
  ]
}
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/acl-profiles/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 199

{
  "action": "text",
  "allow": [
    "text"
  ],
  "allow_bot": [
    "text"
  ],
  "deny": [
    "text"
  ],
  "deny_bot": [
    "text"
  ],
  "description": "text",
  "force_deny": [
    "text"
  ],
  "id": "text",
  "name": "text",
  "passthrough": [
    "text"
  ],
  "tags": [
    "text"
  ]
}
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/acl-profiles/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/acl-profiles/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/acl-profiles/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "text",
      "allow": [
        "text"
      ],
      "allow_bot": [
        "text"
      ],
      "deny": [
        "text"
      ],
      "deny_bot": [
        "text"
      ],
      "description": "text",
      "force_deny": [
        "text"
      ],
      "id": "text",
      "name": "text",
      "passthrough": [
        "text"
      ],
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/acl-profiles/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
GET /api/v4.0/conf/{config}/actions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "description": "text",
      "id": "text",
      "name": "text",
      "params": {
        "content": "",
        "headers": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "status": 1
      },
      "tags": [
        "text"
      ],
      "type": "skip"
    }
  ]
}
PUT /api/v4.0/conf/{config}/actions HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 160

[
  {
    "description": "text",
    "id": "text",
    "name": "text",
    "params": {
      "content": "",
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "status": 1
    },
    "tags": [
      "text"
    ],
    "type": "skip"
  }
]
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/actions HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 160

[
  {
    "description": "text",
    "id": "text",
    "name": "text",
    "params": {
      "content": "",
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "status": 1
    },
    "tags": [
      "text"
    ],
    "type": "skip"
  }
]
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/actions HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/actions/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "description": "text",
  "id": "text",
  "name": "text",
  "params": {
    "content": "",
    "headers": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "status": 1
  },
  "tags": [
    "text"
  ],
  "type": "skip"
}
PUT /api/v4.0/conf/{config}/actions/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 158

{
  "description": "text",
  "id": "text",
  "name": "text",
  "params": {
    "content": "",
    "headers": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "status": 1
  },
  "tags": [
    "text"
  ],
  "type": "skip"
}
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/actions/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 158

{
  "description": "text",
  "id": "text",
  "name": "text",
  "params": {
    "content": "",
    "headers": {
      "ANY_ADDITIONAL_PROPERTY": "text"
    },
    "status": 1
  },
  "tags": [
    "text"
  ],
  "type": "skip"
}
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/actions/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/actions/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/actions/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "description": "text",
      "id": "text",
      "name": "text",
      "params": {
        "content": "",
        "headers": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "status": 1
      },
      "tags": [
        "text"
      ],
      "type": "skip"
    }
  ]
}
PUT /api/v4.0/conf/{config}/actions/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
GET /api/v4.0/conf/{config}/planets HTTP/1.1
Host: 
Accept: */*
{
  "ichallenge": {
    "attrs": {},
    "lang": {},
    "palette": [
      "text"
    ],
    "position": {}
  },
  "name": "text",
  "trusted_nets": [
    {
      "address": "text",
      "comment": "text"
    }
  ]
}
PUT /api/v4.0/conf/{config}/planets/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 137

{
  "ichallenge": {
    "attrs": {},
    "lang": {},
    "palette": [
      "text"
    ],
    "position": {}
  },
  "name": "text",
  "trusted_nets": [
    {
      "address": "text",
      "comment": "text"
    }
  ]
}
{
  "message": "Successfully updated entry"
}
GET /api/v4.0/conf/{config}/global-filters HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": null,
      "active": true,
      "description": "text",
      "id": "text",
      "mdate": "text",
      "name": "text",
      "rule": null,
      "source": "text",
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/global-filters HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 137

[
  {
    "action": null,
    "active": true,
    "description": "text",
    "id": "text",
    "mdate": "text",
    "name": "text",
    "rule": null,
    "source": "text",
    "tags": [
      "text"
    ]
  }
]
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/global-filters HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 137

[
  {
    "action": null,
    "active": true,
    "description": "text",
    "id": "text",
    "mdate": "text",
    "name": "text",
    "rule": null,
    "source": "text",
    "tags": [
      "text"
    ]
  }
]
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/global-filters HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/global-filters/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "action": null,
  "active": true,
  "description": "text",
  "id": "text",
  "mdate": "text",
  "name": "text",
  "rule": null,
  "source": "text",
  "tags": [
    "text"
  ]
}
PUT /api/v4.0/conf/{config}/global-filters/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 135

{
  "action": null,
  "active": true,
  "description": "text",
  "id": "text",
  "mdate": "text",
  "name": "text",
  "rule": null,
  "source": "text",
  "tags": [
    "text"
  ]
}
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/global-filters/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 135

{
  "action": null,
  "active": true,
  "description": "text",
  "id": "text",
  "mdate": "text",
  "name": "text",
  "rule": null,
  "source": "text",
  "tags": [
    "text"
  ]
}
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/global-filters/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/global-filters/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/global-filters/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": null,
      "active": true,
      "description": "text",
      "id": "text",
      "mdate": "text",
      "name": "text",
      "rule": null,
      "source": "text",
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/global-filters/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
GET /api/v4.0/conf/{config}/content-filter-rules HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "category": "text",
      "description": "",
      "id": "text",
      "msg": "text",
      "name": "text",
      "operand": "text",
      "risk": 1,
      "subcategory": "text",
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/content-filter-rules HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 140

[
  {
    "category": "text",
    "description": "",
    "id": "text",
    "msg": "text",
    "name": "text",
    "operand": "text",
    "risk": 1,
    "subcategory": "text",
    "tags": [
      "text"
    ]
  }
]
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/content-filter-rules HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 140

[
  {
    "category": "text",
    "description": "",
    "id": "text",
    "msg": "text",
    "name": "text",
    "operand": "text",
    "risk": 1,
    "subcategory": "text",
    "tags": [
      "text"
    ]
  }
]
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/content-filter-rules HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/content-filter-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "category": "text",
  "description": "",
  "id": "text",
  "msg": "text",
  "name": "text",
  "operand": "text",
  "risk": 1,
  "subcategory": "text",
  "tags": [
    "text"
  ]
}
PUT /api/v4.0/conf/{config}/content-filter-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 138

{
  "category": "text",
  "description": "",
  "id": "text",
  "msg": "text",
  "name": "text",
  "operand": "text",
  "risk": 1,
  "subcategory": "text",
  "tags": [
    "text"
  ]
}
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/content-filter-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 138

{
  "category": "text",
  "description": "",
  "id": "text",
  "msg": "text",
  "name": "text",
  "operand": "text",
  "risk": 1,
  "subcategory": "text",
  "tags": [
    "text"
  ]
}
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/content-filter-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/content-filter-rules/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/content-filter-rules/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "category": "text",
      "description": "",
      "id": "text",
      "msg": "text",
      "name": "text",
      "operand": "text",
      "risk": 1,
      "subcategory": "text",
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/content-filter-rules/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
GET /api/v4.0/accounts/users HTTP/1.1
Host: 
Accept: */*
[
  {
    "id": "text",
    "name": "text",
    "users": [
      {
        "acl": 1,
        "contact_name": "text",
        "email": "[email protected]",
        "id": "text",
        "mobile": "text",
        "org_id": "text",
        "org_name": "text"
      }
    ]
  }
]
POST /api/v4.0/accounts/users HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 88

{
  "acl": 1,
  "contact_name": "text",
  "email": "[email protected]",
  "mobile": "text",
  "org_id": "text"
}
{
  "id": "text"
}
GET /api/v4.0/accounts/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "acl": 1,
  "contact_name": "text",
  "email": "[email protected]",
  "id": "text",
  "mobile": "text",
  "org_id": "text",
  "org_name": "text",
  "otpseed": "text"
}
PUT /api/v4.0/accounts/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 47

{
  "acl": 1,
  "contact_name": "text",
  "mobile": "text"
}
DELETE /api/v4.0/accounts/{entry_id} HTTP/1.1
Host: 
Accept: */*
GET /api/v4.0/accounts/api-keys HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "account_id": "text",
      "created_by": "text",
      "created_time": 1,
      "email": "text",
      "id": "text",
      "key": "text",
      "title": "text"
    }
  ]
}
PUT /api/v4.0/accounts/api-keys/{entry_id} HTTP/1.1
Host: 
Accept: */*
GET /api/v4.0/accounts/{entry_id}/api-keys HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "account_id": "text",
      "created_by": "text",
      "created_time": 1,
      "email": "text",
      "id": "text",
      "key": "text",
      "title": "text"
    }
  ]
}
POST /api/v4.0/accounts/{entry_id}/api-keys HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "title": "text"
}
GET /api/v4.0/accounts/sso HTTP/1.1
Host: 
Accept: */*
{
  "enabled": false,
  "params": {
    "client_id": "text",
    "client_secret": "text",
    "issuer": "text",
    "roles": [
      {
        "idp_group": "text",
        "reblaze_groups": [
          "reblaze-events-viewer"
        ]
      }
    ],
    "roles_claim_key": "text",
    "token_expiration_threshold": 1
  },
  "protocol": "oauth2",
  "provider": "okta",
  "title": "text"
}
POST /api/v4.0/accounts/sso/oauth2 HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 269

{
  "enabled": false,
  "params": {
    "client_id": "text",
    "client_secret": "text",
    "issuer": "text",
    "roles": [
      {
        "idp_group": "text",
        "reblaze_groups": [
          "reblaze-events-viewer"
        ]
      }
    ],
    "roles_claim_key": "text",
    "token_expiration_threshold": 1
  },
  "protocol": "oauth2",
  "provider": "okta",
  "title": "text"
}
{
  "cert_thumbprint": "text",
  "code": 1,
  "message": "text"
}
POST /api/v4.0/accounts/sso/saml2 HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 299

{
  "enabled": false,
  "params": {
    "entityId": "text",
    "login_url": "https://example.com",
    "roles": [
      {
        "idp_group": "text",
        "reblaze_groups": [
          "reblaze-events-viewer"
        ]
      }
    ],
    "roles_claim_key": "text",
    "tenantId": "text",
    "token_expiration_threshold": 1,
    "x509cert": "text"
  },
  "protocol": "oauth2",
  "provider": "okta",
  "title": "text"
}
{
  "cert_thumbprint": "text",
  "code": 1,
  "message": "text"
}
GET /api/v4.0/conf/configs HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "date": "2025-12-13T06:24:20.464Z",
      "description": "text",
      "id": "text",
      "logs": [
        {
          "date": "2025-12-13T06:24:20.464Z",
          "version": "text"
        }
      ],
      "version": "text"
    }
  ]
}
GET /api/v4.0/conf/configs/{config} HTTP/1.1
Host: 
Accept: */*
GET /api/v4.0/conf/configs/{config}/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
PUT /api/v4.0/conf/configs/{config}/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
GET /api/v4.0/conf/{config}/edge-functions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "code": "text",
      "description": "",
      "id": "text",
      "name": "text",
      "phase": "request"
    }
  ]
}
PUT /api/v4.0/conf/{config}/edge-functions HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 78

[
  {
    "code": "text",
    "description": "",
    "id": "text",
    "name": "text",
    "phase": "request"
  }
]
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/edge-functions HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 78

[
  {
    "code": "text",
    "description": "",
    "id": "text",
    "name": "text",
    "phase": "request"
  }
]
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/edge-functions HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/edge-functions/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "code": "text",
  "description": "",
  "id": "text",
  "name": "text",
  "phase": "request"
}
PUT /api/v4.0/conf/{config}/edge-functions/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 76

{
  "code": "text",
  "description": "",
  "id": "text",
  "name": "text",
  "phase": "request"
}
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/edge-functions/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 76

{
  "code": "text",
  "description": "",
  "id": "text",
  "name": "text",
  "phase": "request"
}
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/edge-functions/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/edge-functions/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/edge-functions/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "code": "text",
      "description": "",
      "id": "text",
      "name": "text",
      "phase": "request"
    }
  ]
}
PUT /api/v4.0/conf/{config}/edge-functions/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
PUT /api/v4.0/conf/{config}/content-filter-profiles HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 1562

[
  {
    "action": "",
    "active": [
      "text"
    ],
    "allsections": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "args": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "content_type": [
      "text"
    ],
    "cookies": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "decoding": {
      "base64": true,
      "dual": false,
      "html": false,
      "unicode": false
    },
    "description": "",
    "graphql_path": "",
    "headers": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "id": "text",
    "ignore": [
      "text"
    ],
    "ignore_alphanum": true,
    "ignore_body": false,
    "masking_seed": "text",
    "name": "text",
    "path": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "exclusions": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "report": [
      "text"
    ],
    "tags": [
      "text"
    ]
  }
]
PUT /api/v4.0/conf/{config}/content-filter-profiles/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 1560

{
  "action": "",
  "active": [
    "text"
  ],
  "allsections": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "args": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "content_type": [
    "text"
  ],
  "cookies": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "decoding": {
    "base64": true,
    "dual": false,
    "html": false,
    "unicode": false
  },
  "description": "",
  "graphql_path": "",
  "headers": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "id": "text",
  "ignore": [
    "text"
  ],
  "ignore_alphanum": true,
  "ignore_body": false,
  "masking_seed": "text",
  "name": "text",
  "path": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "report": [
    "text"
  ],
  "tags": [
    "text"
  ]
}
POST /api/v4.0/conf/{config}/content-filter-profiles/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 1560

{
  "action": "",
  "active": [
    "text"
  ],
  "allsections": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "args": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "content_type": [
    "text"
  ],
  "cookies": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "decoding": {
    "base64": true,
    "dual": false,
    "html": false,
    "unicode": false
  },
  "description": "",
  "graphql_path": "",
  "headers": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "id": "text",
  "ignore": [
    "text"
  ],
  "ignore_alphanum": true,
  "ignore_body": false,
  "masking_seed": "text",
  "name": "text",
  "path": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "exclusions": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "report": [
    "text"
  ],
  "tags": [
    "text"
  ]
}
DELETE /api/v4.0/conf/{config}/content-filter-profiles/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/content-filter-profiles/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "",
      "active": [
        "text"
      ],
      "allsections": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "args": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "content_type": [
        "text"
      ],
      "cookies": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "decoding": {
        "base64": true,
        "dual": false,
        "html": false,
        "unicode": false
      },
      "description": "",
      "graphql_path": "",
      "headers": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "id": "text",
      "ignore": [
        "text"
      ],
      "ignore_alphanum": true,
      "ignore_body": false,
      "masking_seed": "text",
      "name": "text",
      "path": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "exclusions": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "report": [
        "text"
      ],
      "tags": [
        "text"
      ]
    }
  ]
}
GET /api/v4.0/data/logs HTTP/1.1
Host: 
Accept: */*
{
  "data": {
    "results": [],
    "statistics": {}
  },
  "status": 1
}
GET /api/v4.0/data/quarantined HTTP/1.1
Host: 
provider: mongodb
syntax: string_query
Accept: */*
{
  "data": {
    "results": [],
    "statistics": {}
  },
  "status": 1
}
DELETE /api/v4.0/data/quarantined HTTP/1.1
Host: 
provider: mongodb
syntax: json
Content-Type: application/json
Accept: */*
Content-Length: 52

{
  "config": "text",
  "ids": [
    "text"
  ],
  "rule_ids": [
    "text"
  ]
}
{
  "data": {
    "results": [],
    "statistics": {}
  },
  "status": 1
}
GET /api/v4.0/data/stats HTTP/1.1
Host: 
Accept: */*
{
  "data": {
    "results": [],
    "statistics": {}
  },
  "status": 1
}
GET /api/v4.0/data/timeline HTTP/1.1
Host: 
Accept: */*
{
  "data": {
    "results": [],
    "statistics": {}
  },
  "status": 1
}
POST /api/v4.0/data/timeline/parse HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "query": "text"
}
{}
GET /api/v4.0/data/topx HTTP/1.1
Host: 
Accept: */*
{
  "data": {
    "results": [],
    "statistics": {}
  },
  "status": 1
}

Get Backend Services

get

Get all Backend Services in a configuration

Path parameters
configstringRequired
Responses
200

Backend Services retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/backend-services

Modify Backend Services

put

Updates an existing set of Backend Services for a configuration

Path parameters
configstringRequired
Bodyobject · BackendService[]
descriptionany ofOptionalDefault: ""
stringOptional
http11booleanRequired

Use HTTP/1.1

idstringRequired
least_connbooleanRequired
namestring · min: 1Required
stickystring · enumRequired

Load Balancing stickiness model

Possible values:
sticky_cookie_nameany ofRequired

Custom cookie name

Default: ""
stringOptional
transport_modestring · enumRequired

Tranport protocol Service connectivity might follow incoming requests, will always be HTTP, or always HTTPS. Port-bridge mode means that Reblaze will target port numbers identical to incoming requests' port numbers.

Possible values:
Responses
200

Backend Services updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/backend-services

Create Backend Services

post

Create a complete set of Backend Services for a configuration

Path parameters
configstringRequired
Bodyobject · BackendService[]
descriptionany ofOptionalDefault: ""
stringOptional
http11booleanRequired

Use HTTP/1.1

idstringRequired
least_connbooleanRequired
namestring · min: 1Required
stickystring · enumRequired

Load Balancing stickiness model

Possible values:
sticky_cookie_nameany ofRequired

Custom cookie name

Default: ""
stringOptional
transport_modestring · enumRequired

Tranport protocol Service connectivity might follow incoming requests, will always be HTTP, or always HTTPS. Port-bridge mode means that Reblaze will target port numbers identical to incoming requests' port numbers.

Possible values:
Responses
201

Backend Services created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/backend-services

Delete Backend Services

delete

Delete all Backend Services in a configuration

Path parameters
configstringRequired
Responses
200

Backend Services deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/backend-services

Get single Backend Service

get

Get an individual Backend Service from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Backend Service retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/backend-services/{entry_id}

Modify a single Backend Service

put

Update an individual Backend Service within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
descriptionany ofOptionalDefault: ""
stringOptional
http11booleanRequired

Use HTTP/1.1

idstringRequired
least_connbooleanRequired
namestring · min: 1Required
stickystring · enumRequired

Load Balancing stickiness model

Possible values:
sticky_cookie_nameany ofRequired

Custom cookie name

Default: ""
stringOptional
transport_modestring · enumRequired

Tranport protocol Service connectivity might follow incoming requests, will always be HTTP, or always HTTPS. Port-bridge mode means that Reblaze will target port numbers identical to incoming requests' port numbers.

Possible values:
Responses
200

Backend Service updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/backend-services/{entry_id}

Create single Backend Service

post

Create an individual Backend Service within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
descriptionany ofOptionalDefault: ""
stringOptional
http11booleanRequired

Use HTTP/1.1

idstringRequired
least_connbooleanRequired
namestring · min: 1Required
stickystring · enumRequired

Load Balancing stickiness model

Possible values:
sticky_cookie_nameany ofRequired

Custom cookie name

Default: ""
stringOptional
transport_modestring · enumRequired

Tranport protocol Service connectivity might follow incoming requests, will always be HTTP, or always HTTPS. Port-bridge mode means that Reblaze will target port numbers identical to incoming requests' port numbers.

Possible values:
Responses
201

Backend Service created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/backend-services/{entry_id}

Delete single Backend Service

delete

Delete an individual Backend Service from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Backend Service deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/backend-services/{entry_id}

Get Backend Services version list

get

Get list of versions of Backend Services in a configuration

Path parameters
configstringRequired
Responses
200

Backend Services version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/backend-services/versions

Get version of Backend Service

get

Get a specific version of a Backend Service

Path parameters
configstringRequired
versionstringRequired
Responses
200

Backend Service retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/backend-services/versions/{version}

Revert a Backend Service to the specified version

put

Set a previous Backend Service version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Backend Service reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/backend-services/versions/{version}/revert

Get Dynamic Rules

get

Get all Dynamic Rules in a configuration

Path parameters
configstringRequired
Responses
200

Dynamic Rules retrieved successfully

application/json
400

Input Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/dynamic-rules

Get specific Dynamic Rule

get

Get a Dynamic Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Dynamic Rule retrieved successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/dynamic-rules/{entry_id}

Modify Dynamic Rule

put

Update an individual Dynamic Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionstringRequired
activebooleanRequired
descriptionstringOptionalDefault: ""
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9\-\_]*$
namestringRequired
offload_ip_filteringbooleanRequired
tagsstring[]Optional
targetstringRequired
thresholdintegerRequired
timeframeintegerRequired
ttlintegerRequired
Responses
200

Dynamic Rule updated successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.0/conf/{config}/dynamic-rules/{entry_id}

Create Dynamic Rule

post

Create an individual Dynamic Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequiredPattern: ^[A-Za-z0-9\-\_]*$
Body
actionstringRequired
activebooleanRequired
descriptionstringOptionalDefault: ""
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9\-\_]*$
namestringRequired
offload_ip_filteringbooleanRequired
tagsstring[]Optional
targetstringRequired
thresholdintegerRequired
timeframeintegerRequired
ttlintegerRequired
Responses
201

Dynamic Rule created successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/conf/{config}/dynamic-rules/{entry_id}

Delete Dynamic Rule

delete

Delete an individual Dynamic Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Dynamic Rule deleted successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
delete
/api/v4.0/conf/{config}/dynamic-rules/{entry_id}

Get Rate Limit Rules

get

Get all Rate Limit Rules in a configuration

Path parameters
configstringRequired
Responses
200

Rate Limit Rules retrieved successfully

application/json
get
/api/v4.0/conf/{config}/rate-limit-rules
200

Rate Limit Rules retrieved successfully

Modify Rate Limit Rules

put

Update an existing set of Rate Limit Rules for a configuration

Path parameters
configstringRequired
Bodyobject · RateLimit[]
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
200

Rate Limit Rules updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/rate-limit-rules

Create Rate Limit Rules

post

Create a complete set of Rate Limit Rules for a configuration

Path parameters
configstringRequired
Bodyobject · RateLimit[]
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
201

Rate Limit Rules created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/rate-limit-rules

Delete Rate Limit Rules

delete

Delete all Rate Limit Rules in a configuration

Path parameters
configstringRequired
Responses
200

Rate Limit Rules deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/rate-limit-rules

Get specific Rate Limit Rule

get

Get a Rate Limit Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Rate Limit Rule retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/rate-limit-rules/{entry_id}

Modify a single Rate Limit Rule

put

Update an individual Rate Limit Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
200

Rate Limit Rule updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/rate-limit-rules/{entry_id}

Create single Rate Limit Rule

post

Create an individual Rate Limit Rule within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
actionstringRequired
activebooleanRequired
descriptionstringOptional
globalbooleanRequired
idstringRequired
is_action_banbooleanOptional
keyany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
last_activatedintegerOptional
namestringRequired
pairwithanyOptional
tagsstring[]Optional
thresholdintegerRequired
timeframeintegerRequired
ttlintegerOptional
Responses
201

Rate Limit Rule created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/rate-limit-rules/{entry_id}

Delete single Rate Limit Rule

delete

Delete an individual Rate Limit Rule from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Rate Limit Rule deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/rate-limit-rules/{entry_id}

Get Rate Limit Rules version list

get

Get list of versions of Rate Limit Rules in a configuration

Path parameters
configstringRequired
Responses
200

Rate Limit Rules version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/rate-limit-rules/versions

Get version of Rate Limit Rule

get

Get a specific version of a Rate Limit Rule

Path parameters
configstringRequired
versionstringRequired
Responses
200

Rate Limit Rule retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/rate-limit-rules/versions/{version}

Revert a Rate Limit Rule to the specified version

put

Set a previous Rate Limit Rule version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Rate Limit Rule reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/rate-limit-rules/versions/{version}/revert

Get Proxy Templates

get

Get all Proxy Templates in a configuration

Path parameters
configstringRequired
Responses
200

Proxy Templates retrieved successfully

application/json
400

Input Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/proxy-templates

Get Proxy Template

get

Get a Proxy Template from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Proxy Template retrieved successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/proxy-templates/{entry_id}

Modify Proxy Template

put

Update an individual Proxy Template within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
acao_headerbooleanRequired
client_body_buffer_sizestringRequired
client_body_timeoutstringRequired
client_header_buffer_sizestringRequired
client_header_timeoutstringRequired
client_max_body_sizestringRequired
conf_specificstringOptionalDefault: ""
custom_listenerbooleanRequired
descriptionstringOptionalDefault: ""
keepalive_timeoutstringRequired
large_client_header_buffers_countstringRequired
large_client_header_buffers_sizestringRequired
limit_req_burststringRequired
limit_req_ratestringRequired
mask_headersstringRequired
namestringRequired
proxy_connect_timeoutstringRequired
proxy_read_timeoutstringRequired
proxy_send_timeoutstringRequired
send_timeoutstringRequired
ssl_ciphersstringOptional
ssl_conf_specificstringOptionalDefault: ""
upstream_hoststringRequired
xff_header_namestringRequired
xrealip_header_namestringRequired
Responses
200

Proxy Template updated successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.0/conf/{config}/proxy-templates/{entry_id}

Create Proxy Template

post

Create an individual Proxy Template within a configuration

Path parameters
configstringRequired
entry_idstringRequiredPattern: ^[A-Za-z0-9\-\_]*$
Body
acao_headerbooleanRequired
client_body_buffer_sizestringRequired
client_body_timeoutstringRequired
client_header_buffer_sizestringRequired
client_header_timeoutstringRequired
client_max_body_sizestringRequired
conf_specificstringOptionalDefault: ""
custom_listenerbooleanRequired
descriptionstringOptionalDefault: ""
keepalive_timeoutstringRequired
large_client_header_buffers_countstringRequired
large_client_header_buffers_sizestringRequired
limit_req_burststringRequired
limit_req_ratestringRequired
mask_headersstringRequired
namestringRequired
proxy_connect_timeoutstringRequired
proxy_read_timeoutstringRequired
proxy_send_timeoutstringRequired
send_timeoutstringRequired
ssl_ciphersstringOptional
ssl_conf_specificstringOptionalDefault: ""
upstream_hoststringRequired
xff_header_namestringRequired
xrealip_header_namestringRequired
Responses
201

Proxy Template created successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/conf/{config}/proxy-templates/{entry_id}

Delete Proxy Template

delete

Delete an individual Proxy Template from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Proxy Template deleted successfully

application/json
400

Bad Request

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
delete
/api/v4.0/conf/{config}/proxy-templates/{entry_id}

Tags

{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/proxy-templates HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "acao_header": true,
      "client_body_buffer_size": "text",
      "client_body_timeout": "text",
      "client_header_buffer_size": "text",
      "client_header_timeout": "text",
      "client_max_body_size": "text",
      "conf_specific": "",
      "custom_listener": true,
      "description": "",
      "keepalive_timeout": "text",
      "large_client_header_buffers_count": "text",
      "large_client_header_buffers_size": "text",
      "limit_req_burst": "text",
      "limit_req_rate": "text",
      "mask_headers": "text",
      "name": "text",
      "proxy_connect_timeout": "text",
      "proxy_read_timeout": "text",
      "proxy_send_timeout": "text",
      "send_timeout": "text",
      "ssl_ciphers": "text",
      "ssl_conf_specific": "",
      "ssl_protocols": [
        "SSLv2"
      ],
      "upstream_host": "text",
      "xff_header_name": "text",
      "xrealip_header_name": "text",
      "advanced_configuration": [
        {
          "configuration": "text",
          "description": "",
          "name": "text",
          "protocol": [
            "http"
          ]
        }
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/proxy-templates/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "acao_header": true,
  "client_body_buffer_size": "text",
  "client_body_timeout": "text",
  "client_header_buffer_size": "text",
  "client_header_timeout": "text",
  "client_max_body_size": "text",
  "conf_specific": "",
  "custom_listener": true,
  "description": "",
  "keepalive_timeout": "text",
  "large_client_header_buffers_count": "text",
  "large_client_header_buffers_size": "text",
  "limit_req_burst": "text",
  "limit_req_rate": "text",
  "mask_headers": "text",
  "name": "text",
  "proxy_connect_timeout": "text",
  "proxy_read_timeout": "text",
  "proxy_send_timeout": "text",
  "send_timeout": "text",
  "ssl_ciphers": "text",
  "ssl_conf_specific": "",
  "ssl_protocols": [
    "SSLv2"
  ],
  "upstream_host": "text",
  "xff_header_name": "text",
  "xrealip_header_name": "text",
  "advanced_configuration": [
    {
      "configuration": "text",
      "description": "",
      "name": "text",
      "protocol": [
        "http"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/proxy-templates/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 793

{
  "acao_header": true,
  "client_body_buffer_size": "text",
  "client_body_timeout": "text",
  "client_header_buffer_size": "text",
  "client_header_timeout": "text",
  "client_max_body_size": "text",
  "conf_specific": "",
  "custom_listener": true,
  "description": "",
  "keepalive_timeout": "text",
  "large_client_header_buffers_count": "text",
  "large_client_header_buffers_size": "text",
  "limit_req_burst": "text",
  "limit_req_rate": "text",
  "mask_headers": "text",
  "name": "text",
  "proxy_connect_timeout": "text",
  "proxy_read_timeout": "text",
  "proxy_send_timeout": "text",
  "send_timeout": "text",
  "ssl_ciphers": "text",
  "ssl_conf_specific": "",
  "ssl_protocols": [
    "SSLv2"
  ],
  "upstream_host": "text",
  "xff_header_name": "text",
  "xrealip_header_name": "text",
  "advanced_configuration": [
    {
      "configuration": "text",
      "description": "",
      "name": "text",
      "protocol": [
        "http"
      ]
    }
  ]
}
POST /api/v4.0/conf/{config}/proxy-templates/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 793

{
  "acao_header": true,
  "client_body_buffer_size": "text",
  "client_body_timeout": "text",
  "client_header_buffer_size": "text",
  "client_header_timeout": "text",
  "client_max_body_size": "text",
  "conf_specific": "",
  "custom_listener": true,
  "description": "",
  "keepalive_timeout": "text",
  "large_client_header_buffers_count": "text",
  "large_client_header_buffers_size": "text",
  "limit_req_burst": "text",
  "limit_req_rate": "text",
  "mask_headers": "text",
  "name": "text",
  "proxy_connect_timeout": "text",
  "proxy_read_timeout": "text",
  "proxy_send_timeout": "text",
  "send_timeout": "text",
  "ssl_ciphers": "text",
  "ssl_conf_specific": "",
  "ssl_protocols": [
    "SSLv2"
  ],
  "upstream_host": "text",
  "xff_header_name": "text",
  "xrealip_header_name": "text",
  "advanced_configuration": [
    {
      "configuration": "text",
      "description": "",
      "name": "text",
      "protocol": [
        "http"
      ]
    }
  ]
}
DELETE /api/v4.0/conf/{config}/proxy-templates/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/backend-services HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "back_hosts": [
        {
          "backup": true,
          "down": true,
          "fail_timeout": 1,
          "host": "text",
          "http_ports": [
            80,
            8080
          ],
          "https_ports": [
            443,
            8443
          ],
          "max_fails": 1,
          "monitor_state": "text",
          "weight": 1
        }
      ],
      "description": "",
      "http11": true,
      "id": "text",
      "least_conn": true,
      "name": "text",
      "sticky": "none",
      "sticky_cookie_name": "",
      "transport_mode": "default"
    }
  ]
}
PUT /api/v4.0/conf/{config}/backend-services HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 315

[
  {
    "back_hosts": [
      {
        "backup": true,
        "down": true,
        "fail_timeout": 1,
        "host": "text",
        "http_ports": [
          80,
          8080
        ],
        "https_ports": [
          443,
          8443
        ],
        "max_fails": 1,
        "monitor_state": "text",
        "weight": 1
      }
    ],
    "description": "",
    "http11": true,
    "id": "text",
    "least_conn": true,
    "name": "text",
    "sticky": "none",
    "sticky_cookie_name": "",
    "transport_mode": "default"
  }
]
POST /api/v4.0/conf/{config}/backend-services HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 315

[
  {
    "back_hosts": [
      {
        "backup": true,
        "down": true,
        "fail_timeout": 1,
        "host": "text",
        "http_ports": [
          80,
          8080
        ],
        "https_ports": [
          443,
          8443
        ],
        "max_fails": 1,
        "monitor_state": "text",
        "weight": 1
      }
    ],
    "description": "",
    "http11": true,
    "id": "text",
    "least_conn": true,
    "name": "text",
    "sticky": "none",
    "sticky_cookie_name": "",
    "transport_mode": "default"
  }
]
DELETE /api/v4.0/conf/{config}/backend-services HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/backend-services/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "back_hosts": [
    {
      "backup": true,
      "down": true,
      "fail_timeout": 1,
      "host": "text",
      "http_ports": [
        80,
        8080
      ],
      "https_ports": [
        443,
        8443
      ],
      "max_fails": 1,
      "monitor_state": "text",
      "weight": 1
    }
  ],
  "description": "",
  "http11": true,
  "id": "text",
  "least_conn": true,
  "name": "text",
  "sticky": "none",
  "sticky_cookie_name": "",
  "transport_mode": "default"
}
PUT /api/v4.0/conf/{config}/backend-services/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 313

{
  "back_hosts": [
    {
      "backup": true,
      "down": true,
      "fail_timeout": 1,
      "host": "text",
      "http_ports": [
        80,
        8080
      ],
      "https_ports": [
        443,
        8443
      ],
      "max_fails": 1,
      "monitor_state": "text",
      "weight": 1
    }
  ],
  "description": "",
  "http11": true,
  "id": "text",
  "least_conn": true,
  "name": "text",
  "sticky": "none",
  "sticky_cookie_name": "",
  "transport_mode": "default"
}
POST /api/v4.0/conf/{config}/backend-services/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 313

{
  "back_hosts": [
    {
      "backup": true,
      "down": true,
      "fail_timeout": 1,
      "host": "text",
      "http_ports": [
        80,
        8080
      ],
      "https_ports": [
        443,
        8443
      ],
      "max_fails": 1,
      "monitor_state": "text",
      "weight": 1
    }
  ],
  "description": "",
  "http11": true,
  "id": "text",
  "least_conn": true,
  "name": "text",
  "sticky": "none",
  "sticky_cookie_name": "",
  "transport_mode": "default"
}
DELETE /api/v4.0/conf/{config}/backend-services/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/backend-services/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/backend-services/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "back_hosts": [
        {
          "backup": true,
          "down": true,
          "fail_timeout": 1,
          "host": "text",
          "http_ports": [
            80,
            8080
          ],
          "https_ports": [
            443,
            8443
          ],
          "max_fails": 1,
          "monitor_state": "text",
          "weight": 1
        }
      ],
      "description": "",
      "http11": true,
      "id": "text",
      "least_conn": true,
      "name": "text",
      "sticky": "none",
      "sticky_cookie_name": "",
      "transport_mode": "default"
    }
  ]
}
PUT /api/v4.0/conf/{config}/backend-services/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/dynamic-rules HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "text",
      "active": true,
      "description": "",
      "id": "text",
      "include": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "exclude": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "name": "text",
      "offload_ip_filtering": true,
      "tags": [
        "text"
      ],
      "target": "text",
      "threshold": 1,
      "timeframe": 1,
      "ttl": 1
    }
  ]
}
GET /api/v4.0/conf/{config}/dynamic-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "action": "text",
  "active": true,
  "description": "",
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "name": "text",
  "offload_ip_filtering": true,
  "tags": [
    "text"
  ],
  "target": "text",
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
PUT /api/v4.0/conf/{config}/dynamic-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 258

{
  "action": "text",
  "active": true,
  "description": "",
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "name": "text",
  "offload_ip_filtering": true,
  "tags": [
    "text"
  ],
  "target": "text",
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
POST /api/v4.0/conf/{config}/dynamic-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 258

{
  "action": "text",
  "active": true,
  "description": "",
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "name": "text",
  "offload_ip_filtering": true,
  "tags": [
    "text"
  ],
  "target": "text",
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
DELETE /api/v4.0/conf/{config}/dynamic-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "text",
      "active": true,
      "description": "text",
      "exclude": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "global": true,
      "id": "text",
      "include": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "is_action_ban": true,
      "key": 1,
      "last_activated": 1,
      "name": "text",
      "pairwith": null,
      "tags": [
        "text"
      ],
      "threshold": 1,
      "timeframe": 1,
      "ttl": 1
    }
  ]
}
PUT /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 298

[
  {
    "action": "text",
    "active": true,
    "description": "text",
    "exclude": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "global": true,
    "id": "text",
    "include": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "is_action_ban": true,
    "key": 1,
    "last_activated": 1,
    "name": "text",
    "pairwith": null,
    "tags": [
      "text"
    ],
    "threshold": 1,
    "timeframe": 1,
    "ttl": 1
  }
]
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 298

[
  {
    "action": "text",
    "active": true,
    "description": "text",
    "exclude": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "global": true,
    "id": "text",
    "include": {
      "relation": "OR",
      "tags": [
        "text"
      ]
    },
    "is_action_ban": true,
    "key": 1,
    "last_activated": 1,
    "name": "text",
    "pairwith": null,
    "tags": [
      "text"
    ],
    "threshold": 1,
    "timeframe": 1,
    "ttl": 1
  }
]
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/rate-limit-rules HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "action": "text",
  "active": true,
  "description": "text",
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "global": true,
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "is_action_ban": true,
  "key": 1,
  "last_activated": 1,
  "name": "text",
  "pairwith": null,
  "tags": [
    "text"
  ],
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
PUT /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 296

{
  "action": "text",
  "active": true,
  "description": "text",
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "global": true,
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "is_action_ban": true,
  "key": 1,
  "last_activated": 1,
  "name": "text",
  "pairwith": null,
  "tags": [
    "text"
  ],
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
POST /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 296

{
  "action": "text",
  "active": true,
  "description": "text",
  "exclude": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "global": true,
  "id": "text",
  "include": {
    "relation": "OR",
    "tags": [
      "text"
    ]
  },
  "is_action_ban": true,
  "key": 1,
  "last_activated": 1,
  "name": "text",
  "pairwith": null,
  "tags": [
    "text"
  ],
  "threshold": 1,
  "timeframe": 1,
  "ttl": 1
}
DELETE /api/v4.0/conf/{config}/rate-limit-rules/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/rate-limit-rules/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/rate-limit-rules/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "text",
      "active": true,
      "description": "text",
      "exclude": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "global": true,
      "id": "text",
      "include": {
        "relation": "OR",
        "tags": [
          "text"
        ]
      },
      "is_action_ban": true,
      "key": 1,
      "last_activated": 1,
      "name": "text",
      "pairwith": null,
      "tags": [
        "text"
      ],
      "threshold": 1,
      "timeframe": 1,
      "ttl": 1
    }
  ]
}
PUT /api/v4.0/conf/{config}/rate-limit-rules/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully updated entry"
}

Get All Tags

get

Get all tags in the system

Path parameters
configstringRequired
Responses
200

Tags retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/tags

Get Tag Usage

get

Get usage of a tag in the configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Tag usage was retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/tags/{entry_id}
{
  "total": 1,
  "items": [
    "text"
  ]
}
GET /api/v4.0/conf/{config}/tags/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "type": "text",
  "embeddings": [
    {}
  ]
}
GET /api/v4.0/conf/{config}/tags HTTP/1.1
Host: 
Accept: */*

Get Log Exporters

get

Get all Log Exporters in a configuration

Path parameters
configstringRequired
Responses
200

Log Exporters retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/log-exporters

Get single Log Exporter configuration

get

Get an individual Log Exporter configuration from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Log Exporter configuration retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/log-exporters/{entry_id}

Modify a single Log Exporter configuration

put

Update an individual Log Exporter configuration within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
idstringRequired
namestringRequired

Name field

activebooleanOptional

This configuration will only take effect when the flag is set to true

Default: false
filterstring · enumOptionalPossible values:
formatstring · enumRequired

Format of the log row that will be exported

Possible values:
Responses
200

Log Exporter configuration updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/log-exporters/{entry_id}

Create single Log Exporter configuration

post

Create an individual Log Exporter configuration within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
idstringRequired
namestringRequired

Name field

activebooleanOptional

This configuration will only take effect when the flag is set to true

Default: false
filterstring · enumOptionalPossible values:
formatstring · enumRequired

Format of the log row that will be exported

Possible values:
Responses
201

Log Exporter configuration created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/log-exporters/{entry_id}

Delete single Log Exporter configuration

delete

Delete an individual Log Exporter configuration from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Log Exporter configuration deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/log-exporters/{entry_id}

Get Log Exporters version list

get

Get list of versions of Log Exporters in a configuration

Path parameters
configstringRequired
Responses
200

Log Exporters version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/log-exporters/versions

Get version of Log Exporters

get

Get a specific version of an Log Exporter configuration

Path parameters
configstringRequired
versionstringRequired
Responses
200

Log Exporter configuration version retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/log-exporters/versions/{version}

Revert Log Exporters to the specified version

put

Set a previous Log Exporters version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Log Exporters reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/log-exporters/versions/{version}/revert

Get Mobile Application Groups

get

Get all Mobile Application Groups

Path parameters
configstringRequired
Responses
200

Mobile Application Groups retrieved successfully

application/json
400

Input Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/mobile-application-groups

Get Mobile Application Group

get

Get a Mobile Application Group from the specified identifier

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Mobile Application Group retrieved successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/mobile-application-groups/{entry_id}

Modify Mobile Application Group

put

Update an individual Mobile Application Group within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
idstringOptional
namestringOptional
descriptionstringOptional
uid_headerstringOptional
gracestringOptional
Responses
200

Mobile Application Group updated successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.0/conf/{config}/mobile-application-groups/{entry_id}

Create Mobile Application Group

post

Create an individual Mobile Application Group within a configuration

Path parameters
configstringRequired
entry_idstringRequiredPattern: ^[A-Za-z0-9\-\_]*$
Body
idstringOptional
namestringOptional
descriptionstringOptional
uid_headerstringOptional
gracestringOptional
Responses
201

Mobile Application Group created successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/conf/{config}/mobile-application-groups/{entry_id}

Delete Mobile Application Group

delete

Delete an individual Mobile Applicaions Group from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Mobile Application Group deleted successfully

application/json
400

Bad Request

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
delete
/api/v4.0/conf/{config}/mobile-application-groups/{entry_id}

Get Flow Control Policies

get

Get all Flow Control Policies in a configuration

Path parameters
configstringRequired
Responses
200

Flow Control Policies retrieved successfully

application/json
get
/api/v4.0/conf/{config}/flow-control-policies
200

Flow Control Policies retrieved successfully

Modify Flow Control Policies

put

Update an existing set of Flow Control Policies for a configuration

Path parameters
configstringRequired
Bodyobject · FlowControl[]
activebooleanRequired

This flow is active

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
excludestring[]Optional

Tags describing requests to exclude from the flow control rule

Default: []
idstringRequired
includestring[]Optional

Tags describing requests to include in the flow control rule

Default: []
namestring · min: 1Required
tagsstring[]Optional

List of tags to apply

Default: []
timeframenumberRequired

The time in which to limit the requests according to the threshold

Responses
200

Flow Control Policies updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/flow-control-policies

Create Flow Control Policies

post

Create a complete set of Flow Control Policies for a configuration

Path parameters
configstringRequired
Bodyobject · FlowControl[]
activebooleanRequired

This flow is active

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
excludestring[]Optional

Tags describing requests to exclude from the flow control rule

Default: []
idstringRequired
includestring[]Optional

Tags describing requests to include in the flow control rule

Default: []
namestring · min: 1Required
tagsstring[]Optional

List of tags to apply

Default: []
timeframenumberRequired

The time in which to limit the requests according to the threshold

Responses
201

Flow Control Policies created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/flow-control-policies

Delete Flow Control Policies

delete

Delete all Flow Control Policies in a configuration

Path parameters
configstringRequired
Responses
200

Flow Control Policies deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/flow-control-policies

Get specific Flow Control Policy

get

Get a Flow Control Policy from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Flow Control Policy retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/flow-control-policies/{entry_id}

Modify a single Flow Control Policy

put

Update an individual Flow Control Policy within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
activebooleanRequired

This flow is active

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
excludestring[]Optional

Tags describing requests to exclude from the flow control rule

Default: []
idstringRequired
includestring[]Optional

Tags describing requests to include in the flow control rule

Default: []
namestring · min: 1Required
tagsstring[]Optional

List of tags to apply

Default: []
timeframenumberRequired

The time in which to limit the requests according to the threshold

Responses
200

Flow Control Policy updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/flow-control-policies/{entry_id}

Create single Flow Control Policy

post

Create an individual Flow Control Policy within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
activebooleanRequired

This flow is active

descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
excludestring[]Optional

Tags describing requests to exclude from the flow control rule

Default: []
idstringRequired
includestring[]Optional

Tags describing requests to include in the flow control rule

Default: []
namestring · min: 1Required
tagsstring[]Optional

List of tags to apply

Default: []
timeframenumberRequired

The time in which to limit the requests according to the threshold

Responses
201

Flow Control Policy created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/flow-control-policies/{entry_id}

Delete single Flow Control Policy

delete

Delete an individual Flow Control Policy from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Flow Control Policy deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/flow-control-policies/{entry_id}

Get Flow Control Policies version list

get

Get list of versions of Flow Control Policies in a configuration

Path parameters
configstringRequired
Responses
200

Flow Control Policies version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/flow-control-policies/versions

Get version of Flow Control Policy

get

Get a specific version of a Flow Control Policy

Path parameters
configstringRequired
versionstringRequired
Responses
200

Flow Control Policy retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/flow-control-policies/versions/{version}

Revert a Flow Control Policy to the specified version

put

Set a previous Flow Control Policy version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Flow Control Policy reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/flow-control-policies/versions/{version}/revert
GET /api/v4.0/conf/{config}/mobile-application-groups HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": []
}
GET /api/v4.0/conf/{config}/mobile-application-groups/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "id": "text",
  "name": "text",
  "description": "text",
  "uid_header": "text",
  "grace": "text",
  "active_config": [],
  "signatures": [
    {
      "active": true,
      "hash": "text",
      "name": "text"
    }
  ]
}
PUT /api/v4.0/conf/{config}/mobile-application-groups/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 161

{
  "id": "text",
  "name": "text",
  "description": "text",
  "uid_header": "text",
  "grace": "text",
  "active_config": [],
  "signatures": [
    {
      "active": true,
      "hash": "text",
      "name": "text"
    }
  ]
}
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/mobile-application-groups/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 161

{
  "id": "text",
  "name": "text",
  "description": "text",
  "uid_header": "text",
  "grace": "text",
  "active_config": [],
  "signatures": [
    {
      "active": true,
      "hash": "text",
      "name": "text"
    }
  ]
}
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/mobile-application-groups/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/flow-control-policies HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "active": true,
      "description": "",
      "exclude": [
        "text"
      ],
      "id": "text",
      "include": [
        "text"
      ],
      "key": [
        {
          "args": "text",
          "attrs": "asnFlowSef",
          "cookies": "text",
          "headers": "text",
          "plugins": "text"
        }
      ],
      "name": "text",
      "steps": [
        {
          "args": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "cookies": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "headers": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "method": "GET",
          "plugins": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "uri": "text"
        }
      ],
      "tags": [
        "text"
      ],
      "timeframe": 1
    }
  ]
}
PUT /api/v4.0/conf/{config}/flow-control-policies HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 441

[
  {
    "active": true,
    "description": "",
    "exclude": [
      "text"
    ],
    "id": "text",
    "include": [
      "text"
    ],
    "key": [
      {
        "args": "text",
        "attrs": "asnFlowSef",
        "cookies": "text",
        "headers": "text",
        "plugins": "text"
      }
    ],
    "name": "text",
    "steps": [
      {
        "args": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "cookies": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "headers": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "method": "GET",
        "plugins": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "uri": "text"
      }
    ],
    "tags": [
      "text"
    ],
    "timeframe": 1
  }
]
POST /api/v4.0/conf/{config}/flow-control-policies HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 441

[
  {
    "active": true,
    "description": "",
    "exclude": [
      "text"
    ],
    "id": "text",
    "include": [
      "text"
    ],
    "key": [
      {
        "args": "text",
        "attrs": "asnFlowSef",
        "cookies": "text",
        "headers": "text",
        "plugins": "text"
      }
    ],
    "name": "text",
    "steps": [
      {
        "args": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "cookies": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "headers": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "method": "GET",
        "plugins": {
          "ANY_ADDITIONAL_PROPERTY": "text"
        },
        "uri": "text"
      }
    ],
    "tags": [
      "text"
    ],
    "timeframe": 1
  }
]
DELETE /api/v4.0/conf/{config}/flow-control-policies HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/flow-control-policies/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "active": true,
  "description": "",
  "exclude": [
    "text"
  ],
  "id": "text",
  "include": [
    "text"
  ],
  "key": [
    {
      "args": "text",
      "attrs": "asnFlowSef",
      "cookies": "text",
      "headers": "text",
      "plugins": "text"
    }
  ],
  "name": "text",
  "steps": [
    {
      "args": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "cookies": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "method": "GET",
      "plugins": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "uri": "text"
    }
  ],
  "tags": [
    "text"
  ],
  "timeframe": 1
}
PUT /api/v4.0/conf/{config}/flow-control-policies/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 439

{
  "active": true,
  "description": "",
  "exclude": [
    "text"
  ],
  "id": "text",
  "include": [
    "text"
  ],
  "key": [
    {
      "args": "text",
      "attrs": "asnFlowSef",
      "cookies": "text",
      "headers": "text",
      "plugins": "text"
    }
  ],
  "name": "text",
  "steps": [
    {
      "args": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "cookies": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "method": "GET",
      "plugins": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "uri": "text"
    }
  ],
  "tags": [
    "text"
  ],
  "timeframe": 1
}
POST /api/v4.0/conf/{config}/flow-control-policies/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 439

{
  "active": true,
  "description": "",
  "exclude": [
    "text"
  ],
  "id": "text",
  "include": [
    "text"
  ],
  "key": [
    {
      "args": "text",
      "attrs": "asnFlowSef",
      "cookies": "text",
      "headers": "text",
      "plugins": "text"
    }
  ],
  "name": "text",
  "steps": [
    {
      "args": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "cookies": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "headers": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "method": "GET",
      "plugins": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "uri": "text"
    }
  ],
  "tags": [
    "text"
  ],
  "timeframe": 1
}
DELETE /api/v4.0/conf/{config}/flow-control-policies/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/flow-control-policies/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/flow-control-policies/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "active": true,
      "description": "",
      "exclude": [
        "text"
      ],
      "id": "text",
      "include": [
        "text"
      ],
      "key": [
        {
          "args": "text",
          "attrs": "asnFlowSef",
          "cookies": "text",
          "headers": "text",
          "plugins": "text"
        }
      ],
      "name": "text",
      "steps": [
        {
          "args": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "cookies": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "headers": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "method": "GET",
          "plugins": {
            "ANY_ADDITIONAL_PROPERTY": "text"
          },
          "uri": "text"
        }
      ],
      "tags": [
        "text"
      ],
      "timeframe": 1
    }
  ]
}
PUT /api/v4.0/conf/{config}/flow-control-policies/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
GET /api/v4.0/conf/{config}/log-exporters HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "id": "text",
      "name": "text",
      "active": false,
      "filter": "all",
      "format": "custom_syslog",
      "server_groups": {
        "all": true,
        "ids": [
          "text"
        ]
      },
      "connection": {
        "host": "https://example.com",
        "port": 1,
        "protocol": "text",
        "tls_mode": "no_tls",
        "certificate": {
          "chain_data": [],
          "cert_body": "text"
        }
      }
    }
  ]
}
GET /api/v4.0/conf/{config}/log-exporters/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "id": "text",
  "name": "text",
  "active": false,
  "filter": "all",
  "format": "custom_syslog",
  "server_groups": {
    "all": true,
    "ids": [
      "text"
    ]
  },
  "connection": {
    "host": "https://example.com",
    "port": 1,
    "protocol": "text",
    "tls_mode": "no_tls",
    "certificate": {
      "chain_data": [],
      "cert_body": "text"
    }
  }
}
PUT /api/v4.0/conf/{config}/log-exporters/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 252

{
  "id": "text",
  "name": "text",
  "active": false,
  "filter": "all",
  "format": "custom_syslog",
  "server_groups": {
    "all": true,
    "ids": [
      "text"
    ]
  },
  "connection": {
    "host": "https://example.com",
    "port": 1,
    "protocol": "text",
    "tls_mode": "no_tls",
    "certificate": {
      "cert_body": "text"
    }
  }
}
POST /api/v4.0/conf/{config}/log-exporters/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 252

{
  "id": "text",
  "name": "text",
  "active": false,
  "filter": "all",
  "format": "custom_syslog",
  "server_groups": {
    "all": true,
    "ids": [
      "text"
    ]
  },
  "connection": {
    "host": "https://example.com",
    "port": 1,
    "protocol": "text",
    "tls_mode": "no_tls",
    "certificate": {
      "cert_body": "text"
    }
  }
}
DELETE /api/v4.0/conf/{config}/log-exporters/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/log-exporters/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/log-exporters/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "id": "text",
      "name": "text",
      "active": false,
      "filter": "all",
      "format": "custom_syslog",
      "server_groups": {
        "all": true,
        "ids": [
          "text"
        ]
      },
      "connection": {
        "host": "https://example.com",
        "port": 1,
        "protocol": "text",
        "tls_mode": "no_tls",
        "certificate": {
          "chain_data": [],
          "cert_body": "text"
        }
      }
    }
  ]
}
PUT /api/v4.0/conf/{config}/log-exporters/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}

List Certificates

get

Get a list of the planet's certificates for a configuration

Path parameters
configstringRequired
Responses
200

Certificates were retrieved successfully

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/certificates

Get Certificate

get

Get a specific Certificate for a configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Certificate was retrieved successfully

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/certificates/{entry_id}

Modify Certificate

put

Change settings for a specific certificate. ("le_" parameters refer to Let's Encrypt.)

Path parameters
configstringRequired
entry_idstringRequired
Query parameters
le_auto_renewbooleanOptionalDefault: true
le_auto_replacebooleanOptionalDefault: true
replace_cert_idstringOptional
Responses
200

Certificate modified successfully

No content

422

Validation Error

application/json
put
/api/v4.0/conf/{config}/certificates/{entry_id}

No content

Add Certificate

post

Create new certificate for a specific list of domains. Generate new certificate or upload existing one based on input parameters. "le_" parameters refer to Let's Encrypt.

Path parameters
configstringRequired
entry_idstringRequiredPattern: (?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)
Query parameters
domainsstring[]OptionalDefault: []
Body
Responses
201

Certificate created

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/certificates/{entry_id}

Delete Certificate

delete

Delete an individual Certificate from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Certificate deleted successfully

No content

400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
delete
/api/v4.0/conf/{config}/certificates/{entry_id}

No content

Get Certificate PEM

get
Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Certificate's PEM retrieved successfully

application/x-pem-file
Responsestring · binary
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/certificates/{entry_id}/pem

Get Certificate PFX

get
Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Certificate's PFX retrieved successfully

application/json
Responsestring · binary
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/certificates/{entry_id}/pfx

Get traffic data from logs

get

Retrieve traffic data using 'filters' parameter, explained at https://gb.docs.reblaze.com/reference-information/api/api-access-to-traffic-data

Query parameters
limitinteger · min: 1 · max: 2500OptionalDefault: 100
offsetintegerOptionalDefault: 0
filtersstringOptional

Filters for request in format selected below (JSON or query string)

Example: {"AND":[{"field":"timestamp","op":"between","value":["2024-06-06 09:31:00","2024-06-06 09:36:00"]},{"field":"status","op":"eq","value":301}]}
debugbooleanOptional

if set to true the request will return rendered SQL without running it, for debug purposes

Example: true | false
save_historybooleanOptional

if set to true the query will be saved in the query history

Example: true | false
Header parameters
providerstring · enumOptional

Database to get data from

Example: bigqueryPossible values:
syntaxstringOptional

syntax of query

Example: json
Responses
200

Logs has been received successfully

application/json
4XX

Misconfigured request

application/json
get
/api/v4.0/data/logs

Extract Certificate from DER File

post

When given a DER file, extracts and returns the certificate body

Body
fileNamestring · binaryRequired
passwordstringOptional

Required if the certificate is password-protected

Responses
200

Request was successful

application/json
Responseany
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/tools/certificates/extractder

No content

Extract Certificate from PEM File

post

When given a PEM file, extracts and returns the certificate body

Body
fileNamestring · binaryRequired
passwordstringOptional

Required if the certificate is password-protected

Responses
200

Request was successful

application/json
Responseany
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/tools/certificates/extractpem

No content

Extract Certificate from PFX File

post

When given a PFX file, extracts and returns the certificate body and private key

Body
fileNamestring · binaryRequired
passwordstringOptional

Required if the certificate is password-protected

Responses
200

Request was successful

application/json
Responseany
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/tools/certificates/extractpfx

No content

Get Planet DNS information

get

Get DNS zone ID and predefined records

Responses
200

Successfully retrieved DNS information

application/json
Responseany
400

Input Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/tools/dns-information

No content

Publish

put

Publish the current version of the specified configuration to the system storage bucket. By default, the name and url of the bucket are 'prod' and 'gs://rbz-$PLANETNAME-config/prod'. These values are also available in the console; navigate to System -> System DB -> select the system namespace -> publishinfo -> the buckets settings. Also, only one publish operation can occur at a time. If a 503 error is received, the previous operation has not yet finished, so the publish command should be resent until it is successful.

Path parameters
configstringRequired
Bodyobject · ToolsPublishConfigPutRequest[]
namestringOptional
urlstringOptional
Responses
200

Configuration published successfully

application/json
400

Publish Configuration Validation Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
503

Publish Already In Progress

application/json
put
/api/v4.0/tools/publish/{config}

Get all Server Groups (sites/domains)

get

Get all Server Groups in a configuration. (Usually, each Server Group represents a site or domain.)

Path parameters
configstringRequired
Responses
200

Server Groups retrieved successfully

application/json
400

Bad Request

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/server-groups

Get a specific Server Group (a specific site/domain)

get

Get a Server Group from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Server Group retrieved successfully

application/json
400

Bad Request

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
get
/api/v4.0/conf/{config}/server-groups/{entry_id}

Modify Server Group (a site/domain)

put

Update an individual Server Group within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9\-\_]*$
challenge_cookie_domainstring · min: 1Required

The domain for a challenge's cookie.

descriptionstringOptionalDefault: ""
mobile_application_groupstringOptional

ID of Mobile Application Group used for site.

namestring · min: 1 · max: 250Required

site name

proxy_templatestringRequired

ID of Proxy template used for site.

routing_profilestringRequired

ID of Routing profile used for site.

security_policystringRequired

ID of security policy applied on site.

server_namesstring[]Required

host names corresponding to the site.

ssl_certificatestringOptional

ID of SSL certificate attached to site.

client_certificatestringOptional

ID of SSL client CA certificate attached to site.

client_certificate_modestring · enumOptional

Controls how client certificate is checked when mTLS is enabled.

Default: onPossible values:
Responses
200

Server Group updated successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.0/conf/{config}/server-groups/{entry_id}

Create Server Group (a site/domain)

post

Create a Server Group within a configuration

Path parameters
configstringRequired
entry_idstringRequiredPattern: ^[A-Za-z0-9\-\_]*$
Body
idstringRequired

Unique id

Pattern: ^[A-Za-z0-9\-\_]*$
challenge_cookie_domainstring · min: 1Required

The domain for a challenge's cookie.

descriptionstringOptionalDefault: ""
mobile_application_groupstringOptional

ID of Mobile Application Group used for site.

namestring · min: 1 · max: 250Required

site name

proxy_templatestringRequired

ID of Proxy template used for site.

routing_profilestringRequired

ID of Routing profile used for site.

security_policystringRequired

ID of security policy applied on site.

server_namesstring[]Required

host names corresponding to the site.

ssl_certificatestringOptional

ID of SSL certificate attached to site.

client_certificatestringOptional

ID of SSL client CA certificate attached to site.

client_certificate_modestring · enumOptional

Controls how client certificate is checked when mTLS is enabled.

Default: onPossible values:
Responses
201

Server Group created successfully

application/json
400

Bad Request

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
post
/api/v4.0/conf/{config}/server-groups/{entry_id}

Delete a Server Group (a site/domain)

delete

Delete a Server Group from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Server Group deleted successfully

application/json
400

Input Error

application/json
422

Validation Error

application/json
500

Internal Server Error

application/json
delete
/api/v4.0/conf/{config}/server-groups/{entry_id}

Get Security Alerts

get

Get all Security Alerts in a configuration

Path parameters
configstringRequired
Responses
200

Security Alerts retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-alerts

Modify Security Alerts

put

Update an existing set of Security Alerts for a configuration

Path parameters
configstringRequired
Bodyobject · SecurityAlert[]
idstringRequired
namestring · min: 1Required
server_groupsstring[]Required

List of attached Server Group IDs

dynamic_rulesstring[]Required

List of attached Dynamic Rule IDs

recipientsstring · email[] · min: 1Required
Responses
200

Security Alerts updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/security-alerts

Create Security Alerts

post

Create complete set of Security Alerts for a configuration

Path parameters
configstringRequired
Bodyobject · SecurityAlert[]
idstringRequired
namestring · min: 1Required
server_groupsstring[]Required

List of attached Server Group IDs

dynamic_rulesstring[]Required

List of attached Dynamic Rule IDs

recipientsstring · email[] · min: 1Required
Responses
201

Security Alerts created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/security-alerts

Delete Security Alerts

delete

Delete all Security Alerts in a configuration

Path parameters
configstringRequired
Responses
200

Security Alerts deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/security-alerts

Get single Alert

get

Get an individual Alert from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Alert retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-alerts/{entry_id}

Modify a single Alert

put

Update an individual Alert within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
idstringRequired
namestring · min: 1Required
server_groupsstring[]Required

List of attached Server Group IDs

dynamic_rulesstring[]Required

List of attached Dynamic Rule IDs

recipientsstring · email[] · min: 1Required
Responses
200

Alert updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/security-alerts/{entry_id}

Create single Alert

post

Create an individual Alert within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
idstringRequired
namestring · min: 1Required
server_groupsstring[]Required

List of attached Server Group IDs

dynamic_rulesstring[]Required

List of attached Dynamic Rule IDs

recipientsstring · email[] · min: 1Required
Responses
201

Alert created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/security-alerts/{entry_id}

Delete single Alert

delete

Delete an individual Alert from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Alert deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/security-alerts/{entry_id}

Get Security Alerts version list

get

Get list of versions of Security Alerts in a configuration

Path parameters
configstringRequired
Responses
200

Security Alerts version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-alerts/versions

Get version of Security Alerts

get

Get a specific version of an Alert

Path parameters
configstringRequired
versionstringRequired
Responses
200

Alert version retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-alerts/versions/{version}

Revert Security Alerts to the specified version

put

Set a previous Security Alerts version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Security Alerts reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/security-alerts/versions/{version}/revert

Get Content Filter Profiles

get

Get all Content Filter Profiles in a configuration

Path parameters
configstringRequired
Responses
200

Content Filter Profiles retrieved successfully

application/json
422

Validation Error

application/json

Create Content Filter Profiles

post

Create a complete set of Content Filter Profiles for a configuration

Path parameters
configstringRequired
Bodyobject · ContentFilterProfile[]
actionany ofOptionalDefault: ""
stringOptional
activestring[]Optional

List of tags to apply

Default: []
allsectionsany ofOptional
argsall ofRequired
content_typeany ofOptional

List of content types

Default: []
string[]Optional
cookiesall ofRequired
decodingall ofRequired
descriptionany ofOptionalDefault: ""
stringOptional
or
nullOptional
graphql_pathany ofOptional

A field in a JSON that contains GraphQL query that need to be parsed. The value should be passed in JSONPath format. It supports regex for values as well.

Default: ""
stringOptional
headersall ofRequired
idstringRequired
ignorestring[]Optional

List of tags to apply

Default: []
ignore_alphanumbooleanRequired

When true, arguments, headers or cookies, which contain only alpha numeric characters, will be ignored

ignore_bodyany ofOptionalDefault: false
booleanOptional
masking_seedstringRequired

A seed which will be used in the masking process

namestring · min: 1Required
pathall ofRequired
reportstring[]Optional

List of tags to apply

Default: []
tagsstring[]Optional

List of tags to apply

Default: []

Delete Content Filter Profiles

delete

Delete all Content Filter Profiles in a configuration

Path parameters
configstringRequired
Responses
200

Content Filter Profiles deleted successfully

application/json
422

Validation Error

application/json

Get single Content Filter Profile

get

Get a Content Filter Profile from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Content Filter Profile retrieved successfully

application/json
422

Validation Error

application/json

Get Content Filter Profiles version list

get

Get list of versions of Content Filter Profiles in a configuration

Path parameters
configstringRequired
Responses
200

Content Filter Profiles version list retrieved successfully

application/json
422

Validation Error

application/json

Revert a Content Filter Profile to the specified version

put

Set a previous Content Filter Profile version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Content Filter Profile reversion was successful

application/json
422

Validation Error

application/json

Server Group created successfully

{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/certificates HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "cert_body": "text",
      "expires": "2025-12-13",
      "id": "text",
      "issuer": "text",
      "le_auto_renew": true,
      "le_auto_replace": true,
      "le_hash": "",
      "private_key": "text",
      "san": [
        "text"
      ],
      "subject": "text",
      "uploaded": "2025-12-13T06:24:20.464Z",
      "revoked": false,
      "crl": [
        "text"
      ],
      "cdp": [
        "text"
      ],
      "side": "server"
    }
  ]
}
GET /api/v4.0/conf/{config}/certificates/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "links": [
    {
      "link": "text",
      "provider": "text",
      "region": "text"
    }
  ],
  "cert_body": "text",
  "expires": "2025-12-13",
  "id": "text",
  "issuer": "text",
  "le_auto_renew": true,
  "le_auto_replace": true,
  "le_hash": "",
  "private_key": "text",
  "san": [
    "text"
  ],
  "subject": "text",
  "uploaded": "2025-12-13T06:24:20.464Z",
  "revoked": false,
  "crl": [
    "text"
  ],
  "cdp": [
    "text"
  ],
  "side": "server"
}
PUT /api/v4.0/conf/{config}/certificates/{entry_id} HTTP/1.1
Host: 
Accept: */*
POST /api/v4.0/conf/{config}/certificates/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 350

{
  "provider_links": [
    {
      "link": "text",
      "provider": "text",
      "region": "text"
    }
  ],
  "cert_body": "text",
  "expires": "2025-12-13",
  "id": "text",
  "issuer": "text",
  "le_auto_renew": true,
  "le_auto_replace": true,
  "le_hash": "",
  "private_key": "text",
  "san": [
    "text"
  ],
  "subject": "text",
  "uploaded": "2025-12-13T06:24:20.464Z",
  "revoked": false,
  "crl": [
    "text"
  ],
  "cdp": [
    "text"
  ],
  "side": "server"
}
DELETE /api/v4.0/conf/{config}/certificates/{entry_id} HTTP/1.1
Host: 
Accept: */*
GET /api/v4.0/conf/{config}/certificates/{entry_id}/pem HTTP/1.1
Host: 
Accept: */*
binary
GET /api/v4.0/conf/{config}/certificates/{entry_id}/pfx HTTP/1.1
Host: 
Accept: */*
binary
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/tools/certificates/extractder HTTP/1.1
Host: 
Content-Type: multipart/form-data
Accept: */*
Content-Length: 39

{
  "fileName": "binary",
  "password": "text"
}
POST /api/v4.0/tools/certificates/extractpem HTTP/1.1
Host: 
Content-Type: multipart/form-data
Accept: */*
Content-Length: 39

{
  "fileName": "binary",
  "password": "text"
}
POST /api/v4.0/tools/certificates/extractpfx HTTP/1.1
Host: 
Content-Type: multipart/form-data
Accept: */*
Content-Length: 39

{
  "fileName": "binary",
  "password": "text"
}
GET /api/v4.0/tools/dns-information HTTP/1.1
Host: 
Accept: */*
PUT /api/v4.0/tools/publish/{config} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 30

[
  {
    "name": "text",
    "url": "text"
  }
]
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/server-groups HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "id": "text",
      "challenge_cookie_domain": "text",
      "description": "",
      "mobile_application_group": "text",
      "name": "text",
      "proxy_template": "text",
      "routing_profile": "text",
      "security_policy": "text",
      "server_names": [
        "text"
      ],
      "ssl_certificate": "text",
      "client_certificate": "text",
      "client_certificate_mode": "on"
    }
  ]
}
GET /api/v4.0/conf/{config}/server-groups/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "id": "text",
  "challenge_cookie_domain": "text",
  "description": "",
  "mobile_application_group": "text",
  "name": "text",
  "proxy_template": "text",
  "routing_profile": "text",
  "security_policy": "text",
  "server_names": [
    "text"
  ],
  "ssl_certificate": "text",
  "client_certificate": "text",
  "client_certificate_mode": "on"
}
PUT /api/v4.0/conf/{config}/server-groups/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 293

{
  "id": "text",
  "challenge_cookie_domain": "text",
  "description": "",
  "mobile_application_group": "text",
  "name": "text",
  "proxy_template": "text",
  "routing_profile": "text",
  "security_policy": "text",
  "server_names": [
    "text"
  ],
  "ssl_certificate": "text",
  "client_certificate": "text",
  "client_certificate_mode": "on"
}
POST /api/v4.0/conf/{config}/server-groups/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 293

{
  "id": "text",
  "challenge_cookie_domain": "text",
  "description": "",
  "mobile_application_group": "text",
  "name": "text",
  "proxy_template": "text",
  "routing_profile": "text",
  "security_policy": "text",
  "server_names": [
    "text"
  ],
  "ssl_certificate": "text",
  "client_certificate": "text",
  "client_certificate_mode": "on"
}
DELETE /api/v4.0/conf/{config}/server-groups/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/security-alerts HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "id": "text",
      "name": "text",
      "server_groups": [
        "text"
      ],
      "dynamic_rules": [
        "text"
      ],
      "recipients": [
        "[email protected]"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/security-alerts HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 111

[
  {
    "id": "text",
    "name": "text",
    "server_groups": [
      "text"
    ],
    "dynamic_rules": [
      "text"
    ],
    "recipients": [
      "[email protected]"
    ]
  }
]
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/security-alerts HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 111

[
  {
    "id": "text",
    "name": "text",
    "server_groups": [
      "text"
    ],
    "dynamic_rules": [
      "text"
    ],
    "recipients": [
      "[email protected]"
    ]
  }
]
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/security-alerts HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/security-alerts/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "id": "text",
  "name": "text",
  "server_groups": [
    "text"
  ],
  "dynamic_rules": [
    "text"
  ],
  "recipients": [
    "[email protected]"
  ]
}
PUT /api/v4.0/conf/{config}/security-alerts/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 109

{
  "id": "text",
  "name": "text",
  "server_groups": [
    "text"
  ],
  "dynamic_rules": [
    "text"
  ],
  "recipients": [
    "[email protected]"
  ]
}
{
  "message": "Successfully updated entry"
}
POST /api/v4.0/conf/{config}/security-alerts/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 109

{
  "id": "text",
  "name": "text",
  "server_groups": [
    "text"
  ],
  "dynamic_rules": [
    "text"
  ],
  "recipients": [
    "[email protected]"
  ]
}
{
  "message": "Successfully created entry"
}
DELETE /api/v4.0/conf/{config}/security-alerts/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/security-alerts/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/security-alerts/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "id": "text",
      "name": "text",
      "server_groups": [
        "text"
      ],
      "dynamic_rules": [
        "text"
      ],
      "recipients": [
        "[email protected]"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/security-alerts/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}
{
  "data": {
    "results": [],
    "statistics": {}
  },
  "status": 1
}
GET /api/v4.0/data/logs HTTP/1.1
Host: 
Accept: */*
get
/api/v4.0/conf/{config}/content-filter-profiles
Responses
201

Content Filter Profiles created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/content-filter-profiles
delete
/api/v4.0/conf/{config}/content-filter-profiles
get
/api/v4.0/conf/{config}/content-filter-profiles/{entry_id}
get
/api/v4.0/conf/{config}/content-filter-profiles/versions
put
/api/v4.0/conf/{config}/content-filter-profiles/versions/{version}/revert

Get Security Policies

get

Get all Security Policies in a configuration

Path parameters
configstringRequired
Responses
200

Security Policies retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-policies

Modify Security Policies

put

Update an existing set of Security Policies for a configuration

Path parameters
configstringRequired
Bodyobject · SecurityPolicy[]
descriptionstringOptional
idstringRequired
namestringRequired
sessionany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
session_idsany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
tagsstring[]Optional
Responses
200

Security Policies updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/security-policies

Create Security Policies

post

Create a complete set of Security Policies for a configuration

Path parameters
configstringRequired
Bodyobject · SecurityPolicy[]
descriptionstringOptional
idstringRequired
namestringRequired
sessionany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
session_idsany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
tagsstring[]Optional
Responses
201

Security Policies created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/security-policies

Delete Security Policies

delete

Delete all Security Policies in a configuration

Path parameters
configstringRequired
Responses
200

Security Policies deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/security-policies

Get specific Security Policy

get

Get a Security Policy from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Security Policy retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-policies/{entry_id}

Modify a single Security Policy

put

Update an individual Security Policy within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
descriptionstringOptional
idstringRequired
namestringRequired
sessionany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
session_idsany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
tagsstring[]Optional
Responses
200

Security Policy updated successfully

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/security-policies/{entry_id}

Create single Security Policy

post

Create an individual Security Policy within a configuration

Path parameters
configstringRequired
entry_idstringRequired
Body
descriptionstringOptional
idstringRequired
namestringRequired
sessionany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
session_idsany ofOptional
integerOptional
or
numberOptional
or
booleanOptional
or
anyOptional
or
tagsstring[]Optional
Responses
201

Security Policy created successfully

application/json
422

Validation Error

application/json
post
/api/v4.0/conf/{config}/security-policies/{entry_id}

Delete single Security Policy

delete

Delete an individual Security Policy from the specified configuration

Path parameters
configstringRequired
entry_idstringRequired
Responses
200

Security Policy deleted successfully

application/json
422

Validation Error

application/json
delete
/api/v4.0/conf/{config}/security-policies/{entry_id}

Get Security Policies version list

get

Get list of versions of Security Policies in a configuration

Path parameters
configstringRequired
Responses
200

Security Policies version list retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-policies/versions

Get version of Security Policy

get

Get a specific version of a Security Policy

Path parameters
configstringRequired
versionstringRequired
Responses
200

Security Policy retrieved successfully

application/json
422

Validation Error

application/json
get
/api/v4.0/conf/{config}/security-policies/versions/{version}

Revert a Security Policy to the specified version

put

Set a previous Security Policy version to be the current one

Path parameters
configstringRequired
versionstringRequired
Responses
200

Security Policy reversion was successful

application/json
422

Validation Error

application/json
put
/api/v4.0/conf/{config}/security-policies/versions/{version}/revert
GET /api/v4.0/conf/{config}/content-filter-profiles HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "action": "",
      "active": [
        "text"
      ],
      "allsections": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "args": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "content_type": [
        "text"
      ],
      "cookies": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "decoding": {
        "base64": true,
        "dual": false,
        "html": false,
        "unicode": false
      },
      "description": "",
      "graphql_path": "",
      "headers": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "id": "text",
      "ignore": [
        "text"
      ],
      "ignore_alphanum": true,
      "ignore_body": false,
      "masking_seed": "text",
      "name": "text",
      "path": {
        "enable_max_count": true,
        "enable_max_length": true,
        "max_count": 1,
        "max_length": 1,
        "names": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ],
        "regex": [
          {
            "ignore_cf_rule_tags": [
              "text"
            ],
            "key": "",
            "mask": false,
            "reg": "",
            "restrict": true
          }
        ]
      },
      "report": [
        "text"
      ],
      "tags": [
        "text"
      ]
    }
  ]
}
POST /api/v4.0/conf/{config}/content-filter-profiles HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 1652

[
  {
    "action": "",
    "active": [
      "text"
    ],
    "allsections": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "args": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "content_type": [
      "text"
    ],
    "cookies": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "decoding": {
      "base64": true,
      "dual": false,
      "html": false,
      "unicode": false
    },
    "description": "",
    "graphql_path": "",
    "headers": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "id": "text",
    "ignore": [
      "text"
    ],
    "ignore_alphanum": true,
    "ignore_body": false,
    "masking_seed": "text",
    "name": "text",
    "path": {
      "enable_max_count": true,
      "enable_max_length": true,
      "max_count": 1,
      "max_length": 1,
      "names": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ],
      "regex": [
        {
          "ignore_cf_rule_tags": [
            "text"
          ],
          "key": "",
          "mask": false,
          "reg": "",
          "restrict": true
        }
      ]
    },
    "report": [
      "text"
    ],
    "tags": [
      "text"
    ]
  }
]
DELETE /api/v4.0/conf/{config}/content-filter-profiles HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/content-filter-profiles/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "action": "",
  "active": [
    "text"
  ],
  "allsections": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "args": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "content_type": [
    "text"
  ],
  "cookies": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "decoding": {
    "base64": true,
    "dual": false,
    "html": false,
    "unicode": false
  },
  "description": "",
  "graphql_path": "",
  "headers": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "id": "text",
  "ignore": [
    "text"
  ],
  "ignore_alphanum": true,
  "ignore_body": false,
  "masking_seed": "text",
  "name": "text",
  "path": {
    "enable_max_count": true,
    "enable_max_length": true,
    "max_count": 1,
    "max_length": 1,
    "names": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ],
    "regex": [
      {
        "ignore_cf_rule_tags": [
          "text"
        ],
        "key": "",
        "mask": false,
        "reg": "",
        "restrict": true
      }
    ]
  },
  "report": [
    "text"
  ],
  "tags": [
    "text"
  ]
}
GET /api/v4.0/conf/{config}/content-filter-profiles/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/content-filter-profiles/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}

Security Policies created successfully

{
  "message": "Successfully created entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
{
  "message": "Successfully updated entry"
}
{
  "message": "Successfully created entry"
}
GET /api/v4.0/conf/{config}/security-policies HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "description": "text",
      "id": "text",
      "map": [
        {
          "acl_profile_active": true,
          "acl_profile": "text",
          "backend_service": "text",
          "edge_functions": [
            "text"
          ],
          "content_filter_profile_active": true,
          "content_filter_profile": "text",
          "description": "text",
          "id": "text",
          "rate_limit_rules": [
            "text"
          ],
          "match": "text",
          "name": "text"
        }
      ],
      "name": "text",
      "session": 1,
      "session_ids": 1,
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/security-policies HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 361

[
  {
    "description": "text",
    "id": "text",
    "map": [
      {
        "acl_profile_active": true,
        "acl_profile": "text",
        "backend_service": "text",
        "edge_functions": [
          "text"
        ],
        "content_filter_profile_active": true,
        "content_filter_profile": "text",
        "description": "text",
        "id": "text",
        "rate_limit_rules": [
          "text"
        ],
        "match": "text",
        "name": "text"
      }
    ],
    "name": "text",
    "session": 1,
    "session_ids": 1,
    "tags": [
      "text"
    ]
  }
]
POST /api/v4.0/conf/{config}/security-policies HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 361

[
  {
    "description": "text",
    "id": "text",
    "map": [
      {
        "acl_profile_active": true,
        "acl_profile": "text",
        "backend_service": "text",
        "edge_functions": [
          "text"
        ],
        "content_filter_profile_active": true,
        "content_filter_profile": "text",
        "description": "text",
        "id": "text",
        "rate_limit_rules": [
          "text"
        ],
        "match": "text",
        "name": "text"
      }
    ],
    "name": "text",
    "session": 1,
    "session_ids": 1,
    "tags": [
      "text"
    ]
  }
]
DELETE /api/v4.0/conf/{config}/security-policies HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/security-policies/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "description": "text",
  "id": "text",
  "map": [
    {
      "acl_profile_active": true,
      "acl_profile": "text",
      "backend_service": "text",
      "edge_functions": [
        "text"
      ],
      "content_filter_profile_active": true,
      "content_filter_profile": "text",
      "description": "text",
      "id": "text",
      "rate_limit_rules": [
        "text"
      ],
      "match": "text",
      "name": "text"
    }
  ],
  "name": "text",
  "session": 1,
  "session_ids": 1,
  "tags": [
    "text"
  ]
}
PUT /api/v4.0/conf/{config}/security-policies/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 359

{
  "description": "text",
  "id": "text",
  "map": [
    {
      "acl_profile_active": true,
      "acl_profile": "text",
      "backend_service": "text",
      "edge_functions": [
        "text"
      ],
      "content_filter_profile_active": true,
      "content_filter_profile": "text",
      "description": "text",
      "id": "text",
      "rate_limit_rules": [
        "text"
      ],
      "match": "text",
      "name": "text"
    }
  ],
  "name": "text",
  "session": 1,
  "session_ids": 1,
  "tags": [
    "text"
  ]
}
POST /api/v4.0/conf/{config}/security-policies/{entry_id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 359

{
  "description": "text",
  "id": "text",
  "map": [
    {
      "acl_profile_active": true,
      "acl_profile": "text",
      "backend_service": "text",
      "edge_functions": [
        "text"
      ],
      "content_filter_profile_active": true,
      "content_filter_profile": "text",
      "description": "text",
      "id": "text",
      "rate_limit_rules": [
        "text"
      ],
      "match": "text",
      "name": "text"
    }
  ],
  "name": "text",
  "session": 1,
  "session_ids": 1,
  "tags": [
    "text"
  ]
}
DELETE /api/v4.0/conf/{config}/security-policies/{entry_id} HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully deleted entry"
}
GET /api/v4.0/conf/{config}/security-policies/versions HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "author": "text",
      "email": "[email protected]",
      "message": "text",
      "date": "2025-12-13T06:24:20.464Z",
      "version": "42bcc1282349db1e5791484c3d69420b1d8a8bc1",
      "parents": [
        "f44073242093228b45bff7eb7a065559fa9b46aa"
      ]
    }
  ]
}
GET /api/v4.0/conf/{config}/security-policies/versions/{version} HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "description": "text",
      "id": "text",
      "map": [
        {
          "acl_profile_active": true,
          "acl_profile": "text",
          "backend_service": "text",
          "edge_functions": [
            "text"
          ],
          "content_filter_profile_active": true,
          "content_filter_profile": "text",
          "description": "text",
          "id": "text",
          "rate_limit_rules": [
            "text"
          ],
          "match": "text",
          "name": "text"
        }
      ],
      "name": "text",
      "session": 1,
      "session_ids": 1,
      "tags": [
        "text"
      ]
    }
  ]
}
PUT /api/v4.0/conf/{config}/security-policies/versions/{version}/revert HTTP/1.1
Host: 
Accept: */*
{
  "message": "Successfully updated entry"
}

Get Load Balancers

get

Get all Load Balancers in a configuration

Path parameters
configstringRequired
Responses
200

Load Balancers retrieved successfully

application/json
400

Input Error

application/json
500

Internal Server Error

application/json
get
/api/v4.3/conf/{config}/load-balancers

Add Certificate

put

Add a certificate to a Load Balancer

Path parameters
configstringRequired
entry_namestringRequired
certificate_idstringRequired
Query parameters
providerstring · enumRequired

An enumeration.

Possible values:
regionstringRequired
defaultbooleanOptionalDefault: false
elbv2booleanOptionalDefault: true
listenerstringRequired
listener-portintegerRequired
Responses
200

Successfully added certificate to Load Balancer

No content

422

Validation Error

application/json
500

Internal Server Error

application/json
put
/api/v4.3/conf/{config}/load-balancers/{entry_name}/certificates/{certificate_id}

No content

Detach certificate

delete

Detach a non-default certificate from the Load Balancer

Path parameters
configstringRequired
entry_namestringRequired
Query parameters
providerstringRequired
regionstringRequired
certificate-idstringOptional
elbv2booleanOptionalDefault: true
listenerstringOptional
listener-portstringOptional
Responses
200

Successfully detached certificate from Load Balancer

No content

422

Validation Error

application/json
500

Internal Server Error

application/json
delete
/api/v4.3/conf/{config}/load-balancers/{entry_name}/certificates

No content

Get available datacenters per region and Load Balancer

get

Get regions with available datacenters for each Load Balancer.

Path parameters
configstringRequired
Responses
200

Load Balancers retrieved successfully

application/json
400

Input Error

application/json
500

Internal Server Error

application/json
get
/api/v4.3/conf/{config}/load-balancers/regions

Set preferred datacenters for each Load Balancer

post

Set preferred datacenters for each Load Balancer. "automatic" will choose the best route depending on the load balancer location.

Path parameters
configstringRequired
Body
lbsobject · LoadBalancerRegiontoDatacenterRegion[]RequiredExample: [{"id":"<id>","regions":{"ash":"ffm","ffm":"ffm","hkg":"ffm","lax":"ffm","lon":"ffm","sgp":"ffm","stl":"automatic"}}]
Responses
200

Load Balancers retrieved successfully

application/json
400

Input Error

application/json
500

Internal Server Error

application/json
post
/api/v4.3/conf/{config}/load-balancers/regions
{
  "message": "Successfully set Load Balancer regions"
}
GET /api/v4.3/conf/{config}/load-balancers HTTP/1.1
Host: 
Accept: */*
{
  "total": 1,
  "items": [
    {
      "certificates": [
        "text"
      ],
      "default_certificate": "text",
      "dns_name": "text",
      "listener_name": "text",
      "listener_port": 1,
      "load_balancer_type": "classic",
      "max_certificates": 1,
      "name": "text",
      "provider": "aws",
      "region": "text"
    }
  ]
}
PUT /api/v4.3/conf/{config}/load-balancers/{entry_name}/certificates/{certificate_id}?provider=aws&region=text&listener=text&listener-port=1 HTTP/1.1
Host: 
Accept: */*
DELETE /api/v4.3/conf/{config}/load-balancers/{entry_name}/certificates?provider=text&region=text HTTP/1.1
Host: 
Accept: */*
GET /api/v4.3/conf/{config}/load-balancers/regions HTTP/1.1
Host: 
Accept: */*
{
  "city_codes": "{\"ams\":\"Amsterdam\",\"ash\":\"Ashburn\",\"ffm\":\"Frankfurt\",\"hkg\":\"Hong Kong\",\"lax\":\"Los Angeles\",\"lon\":\"London\",\"sgp\":\"Singapore\",\"stl\":\"Saint Louis\"}\n",
  "lbs": "[{\"id\":\"<id>\",\"name\":\"<name>\",\"regions\":{\"ams\":\"automatic\",\"ash\":\"automatic\",\"ffm\":\"automatic\",\"hkg\":\"automatic\",\"lax\":\"automatic\",\"lon\":\"automatic\",\"sgp\":\"automatic\",\"stl\":\"automatic\"},\"upstream_regions\":[\"ffm\",\"lax\"]}]\n"
}
POST /api/v4.3/conf/{config}/load-balancers/regions HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 163

{
  "lbs": "[{\"id\":\"<id>\",\"regions\":{\"ash\":\"ffm\",\"ffm\":\"ffm\",\"hkg\":\"ffm\",\"lax\":\"ffm\",\"lon\":\"ffm\",\"sgp\":\"ffm\",\"stl\":\"automatic\"}}]\n"
}