.. _ddos_zone_template_icmp_v4:

ddos zone-template icmp-v4
==========================

ICMPv4 template Configuration


icmp-v4 Specification
---------------------

	===================================== ====================================================================================
	 **Parameter**                         **Value** 

	===================================== ====================================================================================
	 **Type**                              *Collection*

	 **Object Key(s)**                     *icmp-tmpl-name*

	 **Collection Name**                   :ref:`1254_icmp-v4_list`

	 **Collection URI**                    /axapi/v3/ddos/zone-template/icmp-v4

	                                       

	 **Element Name**                      icmp-v4

	 **Element URI**                       /axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}

	 **Element Attributes**                icmp-v4_attributes

	 **Partition Visibility**              shared

	 **Schema**                             :download:`icmp-v4 schema <ddos-zone-template-icmp-v4/ddos-zone-template-icmp-v4.txt>`
	===================================== ====================================================================================





	**Operations Allowed:**




.. raw:: html

   <script type="text/javascript">
 function showExample(a,b) { document.getElementById(a+'_div').style.display = 'block'; document.getElementById(a+'_cl').style.display = 'block'; document.getElementById(a+'_eg').style.display = 'none';}
   function closeExample(a,b) { document.getElementById(a+'_div').style.display = 'none'; document.getElementById(a+'_cl').style.display = 'none'; document.getElementById(a+'_eg').style.display = 'block';}
 </script>
   <table width='90%' style='margin-left:5%'>



.. raw:: html

   <tr style='border-bottom: thin solid; border-top: thin solid'><th width=15%>Operation</th><th width=10%>Method</th><th>URI</th><th width=15%>Payload</th><th width=10%></th></tr>




.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Create Object



.. raw:: html

   </td><td valign = 'top'>


POST



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_attributes`



.. raw:: html

   </td><td><button id='post_eg' onClick="showExample('post')">example</button> <button id='post_cl' onClick="closeExample('post')" style='display:none'>close</button></td></tr>




.. raw:: html

   <tr><td colspan=5 style='padding: 0         % 0    %;' valign = 'top'><div id='post_div' style='display:none'>


.. include:: ../artifacts/ddos_zone_template_icmp_v4_POST.txt
   :literal:




.. raw:: html

   </div></td></tr>


.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Create List



.. raw:: html

   </td><td valign = 'top'>


POST



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_attributes`



.. raw:: html

   </td><td></td></tr>




.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Get Object



.. raw:: html

   </td><td valign = 'top'>


GET



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_attributes`



.. raw:: html

   </td><td><button id='get_eg' onClick="showExample('get')">example</button> <button id='get_cl' onClick="closeExample('get')" style='display:none'>close</button></td></tr>




.. raw:: html

   <tr><td colspan=5 style='padding: 0         % 0    %;' valign = 'top'><div id='get_div' style='display:none'>


.. include:: ../artifacts/ddos_zone_template_icmp_v4_GET.txt
   :literal:




.. raw:: html

   </div></td></tr>


.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Get List



.. raw:: html

   </td><td valign = 'top'>


GET



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_list`



.. raw:: html

   </td><td></td></tr>




.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Modify Object



.. raw:: html

   </td><td valign = 'top'>


POST



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_attributes`



.. raw:: html

   </td><td></td></tr>




.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Replace Object



.. raw:: html

   </td><td valign = 'top'>


PUT



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_attributes`



.. raw:: html

   </td><td><button id='put_eg' onClick="showExample('put')">example</button> <button id='put_cl' onClick="closeExample('put')" style='display:none'>close</button></td></tr>




.. raw:: html

   <tr><td colspan=5 style='padding: 0         % 0    %;' valign = 'top'><div id='put_div' style='display:none'>


.. include:: ../artifacts/ddos_zone_template_icmp_v4_PUT.txt
   :literal:




.. raw:: html

   </div></td></tr>


.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Replace List



.. raw:: html

   </td><td valign = 'top'>


PUT



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_list`



.. raw:: html

   </td><td></td></tr>




.. raw:: html

   <tr  style='border-bottom: thin solid;'><td valign = 'top'>


Delete Object



.. raw:: html

   </td><td valign = 'top'>


DELETE



.. raw:: html

   </td><td valign = 'top'>


/axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}



.. raw:: html

   </td><td valign = 'top'>


:ref:`1254_icmp-v4_attributes`



.. raw:: html

   </td><td><button id='delete_eg' onClick="showExample('delete')">example</button> <button id='delete_cl' onClick="closeExample('delete')" style='display:none'>close</button></td></tr>




.. raw:: html

   <tr><td colspan=5 style='padding: 0         % 0    %;' valign = 'top'><div id='delete_div' style='display:none'>


.. include:: ../artifacts/ddos_zone_template_icmp_v4_DELETE.txt
   :literal:




.. raw:: html

   </div></td></tr>


.. raw:: html

   </table>

.. _1254_icmp-v4_list:

icmp-v4-list
------------


    icmp-v4-list is **JSON List** of :ref:`1254_icmp-v4_attributes` 

        icmp-v4-list : [

             { :ref:`1254_icmp-v4_attributes` },

             { :ref:`1254_icmp-v4_attributes` },

             ...

         ]

.. _1254_icmp-v4_attributes:

icmp-v4 attributes
------------------

    **filter-list**

        **Type:** List

        **Reference Object:** :doc:`/axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}/filter/{icmp-filter-name} <ddos_zone_template_icmp_v4>`

    **filter-match-type**

        **Description** 'default': Stop matching on drop/blacklist action; 'stop-on-first-match': Stop matching on first match; 

        **Type:** string

        **Supported Values:** default, stop-on-first-match

        **Default:** default

    **icmp-tmpl-name**

        **Description** DDOS ICMPv4 Template Name

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

    **type-list**

        **Type:** List

        **Reference Object:** :doc:`/axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}/type/{type-number} <ddos_zone_template_icmp_v4>`

    **type-other**

        **Description:** type-other is a **JSON Block**.  Please see below for :ref:`1254_type-other` 

        **Type:** Object

        **Reference Object:** :doc:`/axapi/v3/ddos/zone-template/icmp-v4/{icmp-tmpl-name}/type-other <ddos_zone_template_icmp_v4>`

    **user-tag**

        **Description** Customized tag

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 127 characters

        **Maximum Length:** 1 characters

    **uuid**

        **Description** uuid of the object

        **Type:** string

        **Maximum Length:** 64 characters

        **Maximum Length:** 1 characters

.. _1254_type-list:

type-list
^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *list*

	 **Block object keys**             

	=============================== ===================================================

    **dst-code-other-rate**

        **Description** Specify the rate with other code

        **Type:** number

        **Range:** 1-16000000

    **dst-code-other-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** dst-code-other-rate-action and dst-code-other-rate-action-list-name are mutually exclusive

    **dst-code-other-rate-action-list-name**

        **Description** Configure action-list to take for  rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** dst-code-other-rate-action-list-name and dst-code-other-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

    **icmp-type-action**

        **Description** 'drop': Reject this ICMP type; 'blacklist-src': Blacklist-src this ICMP type; 'ignore': Ignore this ICMP type; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** icmp-type-action and icmp-type-action-list-name are mutually exclusive

    **icmp-type-action-list-name**

        **Description** Configure action-list to take for this ICMP type

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** icmp-type-action-list-name and icmp-type-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

    **src-code-other-rate**

        **Description** Specify the rate with other code

        **Type:** number

        **Range:** 1-16000000

    **src-code-other-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** src-code-other-rate-action and src-code-other-rate-action-list-name are mutually exclusive

    **src-code-other-rate-action-list-name**

        **Description** Configure action-list to take for  rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** src-code-other-rate-action-list-name and src-code-other-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

    **type-number**

        **Description** Specify ICMP type number

        **Type:** number

        **Range:** 0-255

    **user-tag**

        **Description** Customized tag

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 127 characters

        **Maximum Length:** 1 characters

    **uuid**

        **Description** uuid of the object

        **Type:** string

        **Maximum Length:** 64 characters

        **Maximum Length:** 1 characters

    **v4-dst-code-cfg**

        **Type:** List

    **v4-dst-rate-cfg**

        **Description:** v4-dst-rate-cfg is a **JSON Block**.  Please see below for :ref:`1254_type-list_v4-dst-rate-cfg` 

        **Type:** Object

    **v4-src-code-cfg**

        **Type:** List

    **v4-src-rate-cfg**

        **Description:** v4-src-rate-cfg is a **JSON Block**.  Please see below for :ref:`1254_type-list_v4-src-rate-cfg` 

        **Type:** Object

.. _1254_type-list_v4-src-rate-cfg:

type-list_v4-src-rate-cfg
^^^^^^^^^^^^^^^^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *object*

	=============================== ===================================================

    **src-type-rate**

        **Description** Specify the whole src rate for this type

        **Type:** number

        **Range:** 1-16000000

    **src-type-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** src-type-rate-action and src-type-rate-action-list-name are mutually exclusive

    **src-type-rate-action-list-name**

        **Description** Configure action-list to take for rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** src-type-rate-action-list-name and src-type-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

.. _1254_type-list_v4-dst-code-cfg:

type-list_v4-dst-code-cfg
^^^^^^^^^^^^^^^^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *list*

	 **Block object keys**             

	=============================== ===================================================

    **dst-code-number**

        **Description** Specify the ICMP code for this dst rate

        **Type:** number

        **Range:** 0-255

    **dst-code-rate**

        **Description** Specify the rate with the code

        **Type:** number

        **Range:** 1-16000000

    **dst-code-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** dst-code-rate-action and dst-code-rate-action-list-name are mutually exclusive

    **dst-code-rate-action-list-name**

        **Description** Configure action-list to take for rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** dst-code-rate-action-list-name and dst-code-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

.. _1254_type-list_v4-src-code-cfg:

type-list_v4-src-code-cfg
^^^^^^^^^^^^^^^^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *list*

	 **Block object keys**             

	=============================== ===================================================

    **src-code-number**

        **Description** Specify the ICMP code for this src rate

        **Type:** number

        **Range:** 0-255

    **src-code-rate**

        **Description** Specify the rate with the code

        **Type:** number

        **Range:** 1-16000000

    **src-code-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** src-code-rate-action and src-code-rate-action-list-name are mutually exclusive

    **src-code-rate-action-list-name**

        **Description** Configure action-list to take for rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** src-code-rate-action-list-name and src-code-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

.. _1254_type-list_v4-dst-rate-cfg:

type-list_v4-dst-rate-cfg
^^^^^^^^^^^^^^^^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *object*

	=============================== ===================================================

    **dst-type-rate**

        **Description** Specify the whole dst rate for this type

        **Type:** number

        **Range:** 1-16000000

    **dst-type-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** dst-type-rate-action and dst-type-rate-action-list-name are mutually exclusive

    **dst-type-rate-action-list-name**

        **Description** Configure action-list to take for rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** dst-type-rate-action-list-name and dst-type-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

.. _1254_type-other:

type-other
^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *object*

	=============================== ===================================================

    **dst**

        **Description:** dst is a **JSON Block**.  Please see below for :ref:`1254_type-other_dst` 

        **Type:** Object

    **icmp-type-other-action**

        **Description** 'drop': Reject wildcard ICMP type; 'blacklist-src': Blacklist-src wildcard ICMP type; 'ignore': Ignore wildcard ICMP type; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** icmp-type-other-action and icmp-type-other-action-list-name are mutually exclusive

    **icmp-type-other-action-list-name**

        **Description** Configure action-list to take for wildcard ICMP match

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** icmp-type-other-action-list-name and icmp-type-other-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

    **src**

        **Description:** src is a **JSON Block**.  Please see below for :ref:`1254_type-other_src` 

        **Type:** Object

    **uuid**

        **Description** uuid of the object

        **Type:** string

        **Maximum Length:** 64 characters

        **Maximum Length:** 1 characters

.. _1254_type-other_src:

type-other_src
^^^^^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *object*

	=============================== ===================================================

    **src-type-other-rate**

        **Description** Specify the whole src rate for wildcard ICMP type

        **Type:** number

        **Range:** 1-16000000

    **src-type-other-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** src-type-other-rate-action and src-type-other-rate-action-list-name are mutually exclusive

    **src-type-other-rate-action-list-name**

        **Description** Configure action-list to take for rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** src-type-other-rate-action-list-name and src-type-other-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

.. _1254_type-other_dst:

type-other_dst
^^^^^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *object*

	=============================== ===================================================

    **dst-type-other-rate**

        **Description** Specify the whole dst rate for wildcard ICMP type

        **Type:** number

        **Range:** 1-16000000

    **dst-type-other-rate-action**

        **Description** 'drop': Drop packets for rate exceed (Default); 'blacklist-src': Blacklist-src for rate exceed; 'ignore': Do nothing for rate exceed; 

        **Type:** string

        **Supported Values:** drop, blacklist-src, ignore

        **Mutual Exclusion:** dst-type-other-rate-action and dst-type-other-rate-action-list-name are mutually exclusive

    **dst-type-other-rate-action-list-name**

        **Description** Configure action-list to take for rate exceed

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** dst-type-other-rate-action-list-name and dst-type-other-rate-action are mutually exclusive

        **Reference Object:** :doc:`/axapi/v3/ddos/action-list <ddos_action_list>`

.. _1254_filter-list:

filter-list
^^^^^^^^^^^
	=============================== ===================================================
	**Specification**                 **Value**
	=============================== ===================================================
	 **Type**                        *list*

	 **Block object keys**             

	=============================== ===================================================

    **byte-offset-filter**

        **Description** filter using Berkeley packet filter syntax

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 128 characters

        **Maximum Length:** 1 characters

    **icmp-filter-action**

        **Description** 'drop': Drop packets (Default); 'ignore': Take no action; 'blacklist-src': Blacklist-src; 

        **Type:** string

        **Supported Values:** drop, ignore, blacklist-src

        **Default:** drop

        **Mutual Exclusion:** icmp-filter-action and icmp-filter-action-list-name are mutually exclusive

    **icmp-filter-action-list-name**

        **Description** Configure action-list to take

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

        **Mutual Exclusion:** icmp-filter-action-list-name and icmp-filter-action are mutually exclusive

    **icmp-filter-inverse-match**

        **Description** Inverse the result of matching

        **Type:** boolean

        **Supported Values:** true, false, 1, 0

        **Default:** 0

    **icmp-filter-name**

        **Description** 

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 63 characters

        **Maximum Length:** 1 characters

    **icmp-filter-regex**

        **Description** Regex Expression

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 1275 characters

        **Maximum Length:** 1 characters

    **icmp-filter-seq**

        **Description** sequence number

        **Type:** number

        **Range:** 1-200

    **user-tag**

        **Description** Customized tag

        **Type:** string

        **Format:** string-rlx

        **Maximum Length:** 127 characters

        **Maximum Length:** 1 characters

    **uuid**

        **Description** uuid of the object

        **Type:** string

        **Maximum Length:** 64 characters

        **Maximum Length:** 1 characters