Citrix ADM NITRO API Reference

adm_learn_profile

Configuration for ADM WAF Profile to manage learning groups resource.

Properties

(click to see Operations )

Name Data Type Permissions Description
sms_profile Read-write SMS Profile.
no_of_learned_rules Read-write Number of WAF Profile names configured.
waf_profile_devices_info <waf_profile_devices[]> Read-write Mapping ADC IPs to WAF Profiles.
no_of_deployed_rules Read-write Number of WAF Profile names configured.
slack_profile Read-write Slack Profile.
waf_security_settings_info <waf_security_settings[]> Read-write WAF Security Checks Settings info.
learning_mode Read-write WAF Learning modes can be WAF Profile name based (0), Application name based (1), Rule removal (2), Hybrid (3) .
enabled Read-write enable learning on this profile.
adm_learn_profile_name Read-write Profile Name used for naming a learning group.

Maximum length = 128
mail_profile Read-write Mail Profile.
servicenow_profile Read-write ServiceNow Profile Name.
no_of_waf Read-write Number of WAF Profile names configured.
no_of_adc Read-write Number of ADCs.
id Read-only Id is system generated key..

Operations

(click to see Properties )

  • ADD
  • DELETE
  • GET (ALL)
  • GET
  • UPDATE

Some options that you can use for each operations:

  • Getting warnings in response: NITRO allows you to get warnings in an operation by specifying the 'warning' query parameter as 'yes'. For example, to get warnings while connecting to the NetScaler appliance, the URL is as follows:

    http:// <netscaler-ip-address> /nitro/v1/config/login?warning=yes

    If any, the warnings are displayed in the response payload with the HTTP code '209 X-NITRO-WARNING'.

  • Authenticated access for individual NITRO operations: NITRO allows you to logon to the NetScaler appliance to perform individual operations. You can use this option instead of creating a NITRO session (using the login object) and then using that session to perform all operations,

    To do this, you must specify the username and password in the request header of the NITRO request as follows:

    X-NITRO-USER: <username>

    X-NITRO-PASS: <password>

    Note: In such cases, make sure that the request header DOES not include the following:

    Cookie:NITRO_AUTH_TOKEN= <tokenvalue>

*Note: * Mandatory parameters are marked in red and placeholder content is marked in green

The following parameters can be used in the nitro request : onerror <String_value>

Use this parameter to set the onerror status for nitro request. Applicable only for bulk requests.

Default value: EXIT

Possible values = EXIT, CONTINUE

add

URL: https://<MGMT-IP>/nitro/v2/config/adm_learn_profile?onerror=<String_value> HTTPS Method: POST

Request Headers: Content-Type: application/json

X-NITRO-USER:username_value<String>

X-NITRO-PASS:password_value<String>

or

Cookie:NITRO_AUTH_TOKEN=token_value<String>

Request Payload:

{"adm_learn_profile": {
"no_of_adc":<Integer_value>,
"enabled":<Boolean_value>,
"waf_security_settings_info":[{
"violation_id":<Integer_value>,
"enabled":<Boolean_value>,
"check_type":<Integer_value>,
"configured_time_window":<Double_value>,
"violation_name":<String_value>,
"configured_grace_period":<Double_value>,
"parent_id":<String_value>,
"configured_threshold":<Double_value>,
"is_autodeploy":<Boolean_value>,
"id":<String_value>,
"parent_name":<String_value>}],
"learning_mode":<Integer_value>,
"no_of_learned_rules":<Integer_value>,
"no_of_waf":<Integer_value>,
"sms_profile":<String_value>,
"slack_profile":<String_value>,
"mail_profile":<String_value>,
"servicenow_profile":<String_value>,
"waf_profile_devices_info":[{
"si_device_ip_address":<String_value>,
"parent_id":<String_value>,
"parent_profname":<String_value>,
"ctnsappname":<String_value>,
"id":<String_value>,
"parent_name":<String_value>,
"waf_profile_name":<String_value>}],
"no_of_deployed_rules":<Integer_value>,
"adm_learn_profile_name":<String_value>}}

<!--NeedCopy-->

Response: HTTPS Status Code on Success: 200 OK HTTPS Status Code on Failure: 4xx (for general HTTPS errors) or 5xx (for NetScaler-MAS-specific errors). The response payload provides details of the error

Response Payload:

{ "errorcode": 0, "message": "Done", "severity": ;ltString_value;gt, "adm_learn_profile":[{
"sms_profile":<String_value>,
"no_of_learned_rules":<Integer_value>,
"waf_profile_devices_info":[{
"parent_profname":<String_value>,
"waf_profile_name":<String_value>,
"si_device_ip_address":<String_value>,
"parent_name":<String_value>,
"ctnsappname":<String_value>,
"id":<String_value>,
"parent_id":<String_value>}],
"no_of_deployed_rules":<Integer_value>,
"slack_profile":<String_value>,
"waf_security_settings_info":[{
"parent_name":<String_value>,
"configured_grace_period":<Double_value>,
"configured_time_window":<Double_value>,
"parent_id":<String_value>,
"is_autodeploy":<Boolean_value>,
"configured_threshold":<Double_value>,
"violation_name":<String_value>,
"id":<String_value>,
"violation_id":<Integer_value>,
"check_type":<Integer_value>,
"enabled":<Boolean_value>}],
"learning_mode":<Integer_value>,
"id":<String_value>,
"enabled":<Boolean_value>,
"adm_learn_profile_name":<String_value>,
"mail_profile":<String_value>,
"servicenow_profile":<String_value>,
"no_of_waf":<Integer_value>,
"no_of_adc":<Integer_value>}]}

<!--NeedCopy-->

delete

URL: https://<MGMT-IP>/nitro/v2/config/adm_learn_profile/id_value<String> HTTPS Method: DELETE

Request Headers: X-NITRO-USER:username_value<String>

X-NITRO-PASS:password_value<String>

or

Cookie:NITRO_AUTH_TOKEN=token_value<String>

Response: HTTPS Status Code on Success: 200 OK HTTPS Status Code on Failure: 4xx (for general HTTPS errors) or 5xx (for NetScaler-MAS-specific errors). The response payload provides details of the error

Response Payload:

{ "errorcode": 0, "message": "Done", "severity": ;ltString_value;gt }

<!--NeedCopy-->

get (all)

URL: https://<MGMT-IP>/nitro/v2/config/adm_learn_profile Query-parameters:

filter https://<MGMT-IP>/nitro/v2/config/adm_learn_profile ?filter=property-name1:property-value1,property-name2:property-value2 Use this query-parameter to get the filtered set of adm_learn_profile resources configured on the system. You can set a filter on any property of the resource.

pagesize=#no;pageno=#no https://<MGMT-IP>/nitro/v2/config/adm_learn_profile ?pagesize=#no;pageno=#no Use this query-parameter to get the adm_learn_profile resources in chunks.

count https://<MGMT-IP>/nitro/v2/config/adm_learn_profile ?count=yes Use this query-parameter to get the count of adm_learn_profile resources.

HTTPS Method: GET

Request Headers: Accept: application/json

X-NITRO-USER:username_value<String>

X-NITRO-PASS:password_value<String>

or

Cookie:NITRO_AUTH_TOKEN=token_value<String>

Response: HTTPS Status Code on Success: 200 OK HTTPS Status Code on Failure: 4xx (for general HTTPS errors) or 5xx (for NetScaler-MAS-specific errors). The response payload provides details of the error

Response Headers:

Content-Type:application/json

Response Payload:

{ "errorcode": 0, "message": "Done", "severity": ;ltString_value;gt, "adm_learn_profile":[{
"sms_profile":<String_value>,
"no_of_learned_rules":<Integer_value>,
"waf_profile_devices_info":[{
"parent_profname":<String_value>,
"waf_profile_name":<String_value>,
"si_device_ip_address":<String_value>,
"parent_name":<String_value>,
"ctnsappname":<String_value>,
"id":<String_value>,
"parent_id":<String_value>}],
"no_of_deployed_rules":<Integer_value>,
"slack_profile":<String_value>,
"waf_security_settings_info":[{
"parent_name":<String_value>,
"configured_grace_period":<Double_value>,
"configured_time_window":<Double_value>,
"parent_id":<String_value>,
"is_autodeploy":<Boolean_value>,
"configured_threshold":<Double_value>,
"violation_name":<String_value>,
"id":<String_value>,
"violation_id":<Integer_value>,
"check_type":<Integer_value>,
"enabled":<Boolean_value>}],
"learning_mode":<Integer_value>,
"id":<String_value>,
"enabled":<Boolean_value>,
"adm_learn_profile_name":<String_value>,
"mail_profile":<String_value>,
"servicenow_profile":<String_value>,
"no_of_waf":<Integer_value>,
"no_of_adc":<Integer_value>}]}

<!--NeedCopy-->

get

URL: https://<MGMT-IP>/nitro/v2/config/adm_learn_profile/id_value<String> HTTPS Method: GET

Request Headers: Accept: application/json

X-NITRO-USER:username_value<String>

X-NITRO-PASS:password_value<String>

or

Cookie:NITRO_AUTH_TOKEN=token_value<String>

Response: HTTPS Status Code on Success: 200 OK HTTPS Status Code on Failure: 4xx (for general HTTPS errors) or 5xx (for NetScaler-MAS-specific errors). The response payload provides details of the error

Response Headers:

Content-Type:application/json

Response Payload:

{ "errorcode": 0, "message": "Done", "severity": ;ltString_value;gt, "adm_learn_profile":[{
"sms_profile":<String_value>,
"no_of_learned_rules":<Integer_value>,
"waf_profile_devices_info":[{
"parent_profname":<String_value>,
"waf_profile_name":<String_value>,
"si_device_ip_address":<String_value>,
"parent_name":<String_value>,
"ctnsappname":<String_value>,
"id":<String_value>,
"parent_id":<String_value>}],
"no_of_deployed_rules":<Integer_value>,
"slack_profile":<String_value>,
"waf_security_settings_info":[{
"parent_name":<String_value>,
"configured_grace_period":<Double_value>,
"configured_time_window":<Double_value>,
"parent_id":<String_value>,
"is_autodeploy":<Boolean_value>,
"configured_threshold":<Double_value>,
"violation_name":<String_value>,
"id":<String_value>,
"violation_id":<Integer_value>,
"check_type":<Integer_value>,
"enabled":<Boolean_value>}],
"learning_mode":<Integer_value>,
"id":<String_value>,
"enabled":<Boolean_value>,
"adm_learn_profile_name":<String_value>,
"mail_profile":<String_value>,
"servicenow_profile":<String_value>,
"no_of_waf":<Integer_value>,
"no_of_adc":<Integer_value>}]}

<!--NeedCopy-->

update

URL: https://<MGMT-IP>/nitro/v2/config/adm_learn_profile/id_value<String> HTTPS Method: PUT

Request Headers: Content-Type: application/json

X-NITRO-USER:username_value<String>

X-NITRO-PASS:password_value<String>

or

Cookie:NITRO_AUTH_TOKEN=token_value<String>

Request Payload:

{"adm_learn_profile":{
"no_of_adc":<Integer_value>,
"enabled":<Boolean_value>,
"waf_security_settings_info":[{
"violation_id":<Integer_value>,
"enabled":<Boolean_value>,
"check_type":<Integer_value>,
"configured_time_window":<Double_value>,
"violation_name":<String_value>,
"configured_grace_period":<Double_value>,
"parent_id":<String_value>,
"configured_threshold":<Double_value>,
"is_autodeploy":<Boolean_value>,
"id":<String_value>,
"parent_name":<String_value>}],
"learning_mode":<Integer_value>,
"no_of_learned_rules":<Integer_value>,
"no_of_waf":<Integer_value>,
"sms_profile":<String_value>,
"slack_profile":<String_value>,
"mail_profile":<String_value>,
"servicenow_profile":<String_value>,
"waf_profile_devices_info":[{
"si_device_ip_address":<String_value>,
"parent_id":<String_value>,
"parent_profname":<String_value>,
"ctnsappname":<String_value>,
"id":<String_value>,
"parent_name":<String_value>,
"waf_profile_name":<String_value>}],
"no_of_deployed_rules":<Integer_value>,
"adm_learn_profile_name":<String_value>}}

<!--NeedCopy-->

Response: HTTPS Status Code on Success: 200 OK HTTPS Status Code on Failure: 4xx (for general HTTPS errors) or 5xx (for NetScaler-MAS-specific errors). The response payload provides details of the error

Response Payload:

{ "errorcode": 0, "message": "Done", "severity": ;ltString_value;gt, "adm_learn_profile":[{
"sms_profile":<String_value>,
"no_of_learned_rules":<Integer_value>,
"waf_profile_devices_info":[{
"parent_profname":<String_value>,
"waf_profile_name":<String_value>,
"si_device_ip_address":<String_value>,
"parent_name":<String_value>,
"ctnsappname":<String_value>,
"id":<String_value>,
"parent_id":<String_value>}],
"no_of_deployed_rules":<Integer_value>,
"slack_profile":<String_value>,
"waf_security_settings_info":[{
"parent_name":<String_value>,
"configured_grace_period":<Double_value>,
"configured_time_window":<Double_value>,
"parent_id":<String_value>,
"is_autodeploy":<Boolean_value>,
"configured_threshold":<Double_value>,
"violation_name":<String_value>,
"id":<String_value>,
"violation_id":<Integer_value>,
"check_type":<Integer_value>,
"enabled":<Boolean_value>}],
"learning_mode":<Integer_value>,
"id":<String_value>,
"enabled":<Boolean_value>,
"adm_learn_profile_name":<String_value>,
"mail_profile":<String_value>,
"servicenow_profile":<String_value>,
"no_of_waf":<Integer_value>,
"no_of_adc":<Integer_value>}]}

<!--NeedCopy-->
adm_learn_profile