Hide Show 12 lines of Pod
require
5.6.0;
__PACKAGE__->mk_classdata(
'method_documentation'
=> {});
sub
new {
my
$class
=
shift
;
my
$api_client
;
if
(
$_
[0] &&
ref
$_
[0] &&
ref
$_
[0] eq
'WebService::Fastly::ApiClient'
) {
$api_client
=
$_
[0];
}
else
{
$api_client
= WebService::Fastly::ApiClient->new(
@_
);
}
bless
{
api_client
=>
$api_client
},
$class
;
}
{
my
$params
= {
'service_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying the service.'
,
required
=>
'1'
,
},
'firewall_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying a Firewall.'
,
required
=>
'1'
,
},
'waf_rule_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying a WAF rule.'
,
required
=>
'1'
,
},
};
__PACKAGE__->method_documentation->{
'get_waf_firewall_rule_status'
} = {
summary
=>
'Get the status of a rule on a firewall'
,
params
=>
$params
,
returns
=>
'object'
,
};
}
sub
get_waf_firewall_rule_status {
my
(
$self
,
%args
) =
@_
;
unless
(
exists
$args
{
'service_id'
}) {
croak(
"Missing the required parameter 'service_id' when calling get_waf_firewall_rule_status"
);
}
unless
(
exists
$args
{
'firewall_id'
}) {
croak(
"Missing the required parameter 'firewall_id' when calling get_waf_firewall_rule_status"
);
}
unless
(
exists
$args
{
'waf_rule_id'
}) {
croak(
"Missing the required parameter 'waf_rule_id' when calling get_waf_firewall_rule_status"
);
}
my
$_resource_path
=
'/service/{service_id}/wafs/{firewall_id}/rules/{waf_rule_id}/rule_status'
;
my
$_method
=
'GET'
;
my
$query_params
= {};
my
$header_params
= {};
my
$form_params
= {};
my
$_header_accept
=
$self
->{api_client}->select_header_accept(
'application/vnd.api+json'
);
if
(
$_header_accept
) {
$header_params
->{
'Accept'
} =
$_header_accept
;
}
$header_params
->{
'Content-Type'
} =
$self
->{api_client}->select_header_content_type();
if
(
exists
$args
{
'service_id'
}) {
my
$_base_variable
=
"{"
.
"service_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'service_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
if
(
exists
$args
{
'firewall_id'
}) {
my
$_base_variable
=
"{"
.
"firewall_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'firewall_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
if
(
exists
$args
{
'waf_rule_id'
}) {
my
$_base_variable
=
"{"
.
"waf_rule_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'waf_rule_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
my
$_body_data
;
my
$auth_settings
= [
qw(token )
];
my
$response
=
$self
->{api_client}->call_api(
$_resource_path
,
$_method
,
$query_params
,
$form_params
,
$header_params
,
$_body_data
,
$auth_settings
);
if
(!
$response
) {
return
;
}
my
$_response_object
=
$self
->{api_client}->deserialize(
'object'
,
$response
);
return
$_response_object
;
}
{
my
$params
= {
'service_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying the service.'
,
required
=>
'1'
,
},
'firewall_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying a Firewall.'
,
required
=>
'1'
,
},
'filter[status]'
=> {
data_type
=>
'string'
,
description
=>
'Limit results to rule statuses with the specified status.'
,
required
=>
'0'
,
},
'filter[rule][message]'
=> {
data_type
=>
'string'
,
description
=>
'Limit results to rule statuses whose rules have the specified message.'
,
required
=>
'0'
,
},
'filter[rule][rule_id]'
=> {
data_type
=>
'string'
,
description
=>
'Limit results to rule statuses whose rules represent the specified ModSecurity rule_id.'
,
required
=>
'0'
,
},
'filter[rule][tags]'
=> {
data_type
=>
'string'
,
description
=>
'Limit results to rule statuses whose rules relate to the specified tag IDs.'
,
required
=>
'0'
,
},
'filter[rule][tags][name]'
=> {
data_type
=>
'string'
,
description
=>
'Limit results to rule statuses whose rules related to the named tags.'
,
required
=>
'0'
,
},
'include'
=> {
data_type
=>
'string'
,
description
=>
'Include relationships. Optional, comma separated values. Permitted values: `tags`. '
,
required
=>
'0'
,
},
'page[number]'
=> {
data_type
=>
'int'
,
description
=>
'Current page.'
,
required
=>
'0'
,
},
'page[size]'
=> {
data_type
=>
'int'
,
description
=>
'Number of records per page.'
,
required
=>
'0'
,
},
};
__PACKAGE__->method_documentation->{
'list_waf_firewall_rule_statuses'
} = {
summary
=>
'List rule statuses'
,
params
=>
$params
,
returns
=>
'object'
,
};
}
sub
list_waf_firewall_rule_statuses {
my
(
$self
,
%args
) =
@_
;
unless
(
exists
$args
{
'service_id'
}) {
croak(
"Missing the required parameter 'service_id' when calling list_waf_firewall_rule_statuses"
);
}
unless
(
exists
$args
{
'firewall_id'
}) {
croak(
"Missing the required parameter 'firewall_id' when calling list_waf_firewall_rule_statuses"
);
}
my
$_resource_path
=
'/service/{service_id}/wafs/{firewall_id}/rule_statuses'
;
my
$_method
=
'GET'
;
my
$query_params
= {};
my
$header_params
= {};
my
$form_params
= {};
my
$_header_accept
=
$self
->{api_client}->select_header_accept(
'application/vnd.api+json'
);
if
(
$_header_accept
) {
$header_params
->{
'Accept'
} =
$_header_accept
;
}
$header_params
->{
'Content-Type'
} =
$self
->{api_client}->select_header_content_type();
if
(
exists
$args
{
'filter[status]'
}) {
$query_params
->{
'filter[status]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[status]'
});
}
if
(
exists
$args
{
'filter[rule][message]'
}) {
$query_params
->{
'filter[rule][message]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[rule][message]'
});
}
if
(
exists
$args
{
'filter[rule][rule_id]'
}) {
$query_params
->{
'filter[rule][rule_id]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[rule][rule_id]'
});
}
if
(
exists
$args
{
'filter[rule][tags]'
}) {
$query_params
->{
'filter[rule][tags]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[rule][tags]'
});
}
if
(
exists
$args
{
'filter[rule][tags][name]'
}) {
$query_params
->{
'filter[rule][tags][name]'
} =
$self
->{api_client}->to_query_value(
$args
{
'filter[rule][tags][name]'
});
}
if
(
exists
$args
{
'include'
}) {
$query_params
->{
'include'
} =
$self
->{api_client}->to_query_value(
$args
{
'include'
});
}
if
(
exists
$args
{
'page[number]'
}) {
$query_params
->{
'page[number]'
} =
$self
->{api_client}->to_query_value(
$args
{
'page[number]'
});
}
if
(
exists
$args
{
'page[size]'
}) {
$query_params
->{
'page[size]'
} =
$self
->{api_client}->to_query_value(
$args
{
'page[size]'
});
}
if
(
exists
$args
{
'service_id'
}) {
my
$_base_variable
=
"{"
.
"service_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'service_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
if
(
exists
$args
{
'firewall_id'
}) {
my
$_base_variable
=
"{"
.
"firewall_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'firewall_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
my
$_body_data
;
my
$auth_settings
= [
qw(token )
];
my
$response
=
$self
->{api_client}->call_api(
$_resource_path
,
$_method
,
$query_params
,
$form_params
,
$header_params
,
$_body_data
,
$auth_settings
);
if
(!
$response
) {
return
;
}
my
$_response_object
=
$self
->{api_client}->deserialize(
'object'
,
$response
);
return
$_response_object
;
}
{
my
$params
= {
'service_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying the service.'
,
required
=>
'1'
,
},
'firewall_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying a Firewall.'
,
required
=>
'1'
,
},
'waf_rule_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying a WAF rule.'
,
required
=>
'1'
,
},
'request_body'
=> {
data_type
=>
'HASH[string,object]'
,
description
=>
''
,
required
=>
'0'
,
},
};
__PACKAGE__->method_documentation->{
'update_waf_firewall_rule_status'
} = {
summary
=>
'Update the status of a rule'
,
params
=>
$params
,
returns
=>
'object'
,
};
}
sub
update_waf_firewall_rule_status {
my
(
$self
,
%args
) =
@_
;
unless
(
exists
$args
{
'service_id'
}) {
croak(
"Missing the required parameter 'service_id' when calling update_waf_firewall_rule_status"
);
}
unless
(
exists
$args
{
'firewall_id'
}) {
croak(
"Missing the required parameter 'firewall_id' when calling update_waf_firewall_rule_status"
);
}
unless
(
exists
$args
{
'waf_rule_id'
}) {
croak(
"Missing the required parameter 'waf_rule_id' when calling update_waf_firewall_rule_status"
);
}
my
$_resource_path
=
'/service/{service_id}/wafs/{firewall_id}/rules/{waf_rule_id}/rule_status'
;
my
$_method
=
'PATCH'
;
my
$query_params
= {};
my
$header_params
= {};
my
$form_params
= {};
my
$_header_accept
=
$self
->{api_client}->select_header_accept(
'application/vnd.api+json'
);
if
(
$_header_accept
) {
$header_params
->{
'Accept'
} =
$_header_accept
;
}
$header_params
->{
'Content-Type'
} =
$self
->{api_client}->select_header_content_type(
'application/vnd.api+json'
);
if
(
exists
$args
{
'service_id'
}) {
my
$_base_variable
=
"{"
.
"service_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'service_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
if
(
exists
$args
{
'firewall_id'
}) {
my
$_base_variable
=
"{"
.
"firewall_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'firewall_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
if
(
exists
$args
{
'waf_rule_id'
}) {
my
$_base_variable
=
"{"
.
"waf_rule_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'waf_rule_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
my
$_body_data
;
if
(
exists
$args
{
'request_body'
}) {
$_body_data
=
$args
{
'request_body'
};
}
my
$auth_settings
= [
qw(token )
];
my
$response
=
$self
->{api_client}->call_api(
$_resource_path
,
$_method
,
$query_params
,
$form_params
,
$header_params
,
$_body_data
,
$auth_settings
);
if
(!
$response
) {
return
;
}
my
$_response_object
=
$self
->{api_client}->deserialize(
'object'
,
$response
);
return
$_response_object
;
}
{
my
$params
= {
'service_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying the service.'
,
required
=>
'1'
,
},
'firewall_id'
=> {
data_type
=>
'string'
,
description
=>
'Alphanumeric string identifying a Firewall.'
,
required
=>
'1'
,
},
'name'
=> {
data_type
=>
'string'
,
description
=>
'The tag name to use to determine the set of rules to update. For example, OWASP or language-php.'
,
required
=>
'0'
,
},
'force'
=> {
data_type
=>
'string'
,
description
=>
'Whether or not to update rule statuses for disabled rules. Optional.'
,
required
=>
'0'
,
},
'request_body'
=> {
data_type
=>
'HASH[string,object]'
,
description
=>
''
,
required
=>
'0'
,
},
};
__PACKAGE__->method_documentation->{
'update_waf_firewall_rule_statuses_tag'
} = {
summary
=>
'Create or update status of a tagged group of rules'
,
params
=>
$params
,
returns
=>
'object'
,
};
}
sub
update_waf_firewall_rule_statuses_tag {
my
(
$self
,
%args
) =
@_
;
unless
(
exists
$args
{
'service_id'
}) {
croak(
"Missing the required parameter 'service_id' when calling update_waf_firewall_rule_statuses_tag"
);
}
unless
(
exists
$args
{
'firewall_id'
}) {
croak(
"Missing the required parameter 'firewall_id' when calling update_waf_firewall_rule_statuses_tag"
);
}
my
$_resource_path
=
'/service/{service_id}/wafs/{firewall_id}/rule_statuses'
;
my
$_method
=
'POST'
;
my
$query_params
= {};
my
$header_params
= {};
my
$form_params
= {};
my
$_header_accept
=
$self
->{api_client}->select_header_accept(
'application/vnd.api+json'
);
if
(
$_header_accept
) {
$header_params
->{
'Accept'
} =
$_header_accept
;
}
$header_params
->{
'Content-Type'
} =
$self
->{api_client}->select_header_content_type(
'application/vnd.api+json'
);
if
(
exists
$args
{
'name'
}) {
$query_params
->{
'name'
} =
$self
->{api_client}->to_query_value(
$args
{
'name'
});
}
if
(
exists
$args
{
'force'
}) {
$query_params
->{
'force'
} =
$self
->{api_client}->to_query_value(
$args
{
'force'
});
}
if
(
exists
$args
{
'service_id'
}) {
my
$_base_variable
=
"{"
.
"service_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'service_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
if
(
exists
$args
{
'firewall_id'
}) {
my
$_base_variable
=
"{"
.
"firewall_id"
.
"}"
;
my
$_base_value
=
$self
->{api_client}->to_path_value(
$args
{
'firewall_id'
});
$_resource_path
=~ s/
$_base_variable
/
$_base_value
/g;
}
my
$_body_data
;
if
(
exists
$args
{
'request_body'
}) {
$_body_data
=
$args
{
'request_body'
};
}
my
$auth_settings
= [
qw(token )
];
my
$response
=
$self
->{api_client}->call_api(
$_resource_path
,
$_method
,
$query_params
,
$form_params
,
$header_params
,
$_body_data
,
$auth_settings
);
if
(!
$response
) {
return
;
}
my
$_response_object
=
$self
->{api_client}->deserialize(
'object'
,
$response
);
return
$_response_object
;
}
1;