# FirewallRulesApi

## FirewallRulesApi

All URIs are relative to *<https://api.ionos.com/cloudapi/v6>*

| Method                                                                                                            | HTTP request                                                                                          | Description                     |
| ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ------------------------------- |
| [**datacenters\_servers\_nics\_firewallrules\_delete**](#datacenters_servers_nics_firewallrules_delete)           | **DELETE** /datacenters/{datacenterId}/servers/{serverId}/nics/{nicId}/firewallrules/{firewallruleId} | Delete firewall rules           |
| [**datacenters\_servers\_nics\_firewallrules\_find\_by\_id**](#datacenters_servers_nics_firewallrules_find_by_id) | **GET** /datacenters/{datacenterId}/servers/{serverId}/nics/{nicId}/firewallrules/{firewallruleId}    | Retrieve firewall rules         |
| [**datacenters\_servers\_nics\_firewallrules\_get**](#datacenters_servers_nics_firewallrules_get)                 | **GET** /datacenters/{datacenterId}/servers/{serverId}/nics/{nicId}/firewallrules                     | List firewall rules             |
| [**datacenters\_servers\_nics\_firewallrules\_patch**](#datacenters_servers_nics_firewallrules_patch)             | **PATCH** /datacenters/{datacenterId}/servers/{serverId}/nics/{nicId}/firewallrules/{firewallruleId}  | Partially modify firewall rules |
| [**datacenters\_servers\_nics\_firewallrules\_post**](#datacenters_servers_nics_firewallrules_post)               | **POST** /datacenters/{datacenterId}/servers/{serverId}/nics/{nicId}/firewallrules                    | Create a Firewall Rule          |
| [**datacenters\_servers\_nics\_firewallrules\_put**](#datacenters_servers_nics_firewallrules_put)                 | **PUT** /datacenters/{datacenterId}/servers/{serverId}/nics/{nicId}/firewallrules/{firewallruleId}    | Modify a Firewall Rule          |

## **datacenters\_servers\_nics\_firewallrules\_delete**

> datacenters\_servers\_nics\_firewallrules\_delete(datacenter\_id, server\_id, nic\_id, firewallrule\_id, pretty=pretty, depth=depth, x\_contract\_number=x\_contract\_number)

Delete firewall rules

Delete the specified firewall rule.

#### Example

```python
from __future__ import print_function
import time
import ionoscloud
from ionoscloud.rest import ApiException

# Defining the host is optional and defaults to https://api.ionos.com/cloudapi/v6
configuration = ionoscloud.Configuration(
    host = 'https://api.ionos.com/cloudapi/v6',
)

# Example of configuring HTTP Basic Authorization
configuration.username = 'YOUR_USERNAME'
configuration.password = 'YOUR_PASSWORD'

with ionoscloud.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = ionoscloud.FirewallRulesApi(api_client)
    datacenter_id = 'datacenter_id_example' # str | The unique ID of the data center.
    server_id = 'server_id_example' # str | The unique ID of the server.
    nic_id = 'nic_id_example' # str | The unique ID of the NIC.
    firewallrule_id = 'firewallrule_id_example' # str | The unique ID of the firewall rule.
    try:
        # Delete firewall rules
        api_instance.datacenters_servers_nics_firewallrules_delete(datacenter_id, server_id, nic_id, firewallrule_id)
    except ApiException as e:
        print('Exception when calling FirewallRulesApi.datacenters_servers_nics_firewallrules_delete: %s\n' % e)
```

#### Parameters

| Name                    | Type     | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                          |
| ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| **datacenter\_id**      | **str**  | The unique ID of the data center.                                                                                                                                                                                                                                                                                                                                                                                                        |                                |
| **server\_id**          | **str**  | The unique ID of the server.                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **nic\_id**             | **str**  | The unique ID of the NIC.                                                                                                                                                                                                                                                                                                                                                                                                                |                                |
| **firewallrule\_id**    | **str**  | The unique ID of the firewall rule.                                                                                                                                                                                                                                                                                                                                                                                                      |                                |
| **pretty**              | **bool** | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional] \[default to True] |
| **depth**               | **int**  | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional] \[default to 0]    |
| **x\_contract\_number** | **int**  | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                    |

#### Return type

void (empty response body)

#### Authorization

Basic Authentication, Token Authentication

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **datacenters\_servers\_nics\_firewallrules\_find\_by\_id**

> FirewallRule datacenters\_servers\_nics\_firewallrules\_find\_by\_id(datacenter\_id, server\_id, nic\_id, firewallrule\_id, pretty=pretty, depth=depth, x\_contract\_number=x\_contract\_number)

Retrieve firewall rules

Retrieve the properties of the specified firewall rule.

#### Example

```python
from __future__ import print_function
import time
import ionoscloud
from ionoscloud.rest import ApiException

# Defining the host is optional and defaults to https://api.ionos.com/cloudapi/v6
configuration = ionoscloud.Configuration(
    host = 'https://api.ionos.com/cloudapi/v6',
)

# Example of configuring HTTP Basic Authorization
configuration.username = 'YOUR_USERNAME'
configuration.password = 'YOUR_PASSWORD'

with ionoscloud.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = ionoscloud.FirewallRulesApi(api_client)
    datacenter_id = 'datacenter_id_example' # str | The unique ID of the data center.
    server_id = 'server_id_example' # str | The unique ID of the server.
    nic_id = 'nic_id_example' # str | The unique ID of the NIC.
    firewallrule_id = 'firewallrule_id_example' # str | The unique ID of the firewall rule.
    try:
        # Retrieve firewall rules
        api_response = api_instance.datacenters_servers_nics_firewallrules_find_by_id(datacenter_id, server_id, nic_id, firewallrule_id)
        print(api_response)
    except ApiException as e:
        print('Exception when calling FirewallRulesApi.datacenters_servers_nics_firewallrules_find_by_id: %s\n' % e)
```

#### Parameters

| Name                    | Type     | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                          |
| ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| **datacenter\_id**      | **str**  | The unique ID of the data center.                                                                                                                                                                                                                                                                                                                                                                                                        |                                |
| **server\_id**          | **str**  | The unique ID of the server.                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **nic\_id**             | **str**  | The unique ID of the NIC.                                                                                                                                                                                                                                                                                                                                                                                                                |                                |
| **firewallrule\_id**    | **str**  | The unique ID of the firewall rule.                                                                                                                                                                                                                                                                                                                                                                                                      |                                |
| **pretty**              | **bool** | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional] \[default to True] |
| **depth**               | **int**  | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional] \[default to 0]    |
| **x\_contract\_number** | **int**  | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                    |

#### Return type

[**FirewallRule**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallrule)

#### Authorization

Basic Authentication, Token Authentication

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **datacenters\_servers\_nics\_firewallrules\_get**

> FirewallRules datacenters\_servers\_nics\_firewallrules\_get(datacenter\_id, server\_id, nic\_id, pretty=pretty, depth=depth, x\_contract\_number=x\_contract\_number, offset=offset, limit=limit)

List firewall rules

List all firewall rules for the specified NIC.

#### Example

```python
from __future__ import print_function
import time
import ionoscloud
from ionoscloud.rest import ApiException

# Defining the host is optional and defaults to https://api.ionos.com/cloudapi/v6
configuration = ionoscloud.Configuration(
    host = 'https://api.ionos.com/cloudapi/v6',
)

# Example of configuring HTTP Basic Authorization
configuration.username = 'YOUR_USERNAME'
configuration.password = 'YOUR_PASSWORD'

with ionoscloud.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = ionoscloud.FirewallRulesApi(api_client)
    datacenter_id = 'datacenter_id_example' # str | The unique ID of the data center.
    server_id = 'server_id_example' # str | The unique ID of the server.
    nic_id = 'nic_id_example' # str | The unique ID of the NIC.
    try:
        # List firewall rules
        api_response = api_instance.datacenters_servers_nics_firewallrules_get(datacenter_id, server_id, nic_id)
        print(api_response)
    except ApiException as e:
        print('Exception when calling FirewallRulesApi.datacenters_servers_nics_firewallrules_get: %s\n' % e)
```

#### Parameters

| Name                    | Type     | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                          |
| ----------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| **datacenter\_id**      | **str**  | The unique ID of the data center.                                                                                                                                                                                                                                                                                                                                                                                                        |                                |
| **server\_id**          | **str**  | The unique ID of the server.                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **nic\_id**             | **str**  | The unique ID of the NIC.                                                                                                                                                                                                                                                                                                                                                                                                                |                                |
| **pretty**              | **bool** | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional] \[default to True] |
| **depth**               | **int**  | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional] \[default to 0]    |
| **x\_contract\_number** | **int**  | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                    |
| **offset**              | **int**  | The first element (from the complete list of the elements) to include in the response (used together with \<b>\<i>limit\</i>\</b> for pagination).                                                                                                                                                                                                                                                                                       | \[optional] \[default to 0]    |
| **limit**               | **int**  | The maximum number of elements to return (use together with offset for pagination).                                                                                                                                                                                                                                                                                                                                                      | \[optional] \[default to 1000] |

#### Return type

[**FirewallRules**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallrules)

#### Authorization

Basic Authentication, Token Authentication

#### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## **datacenters\_servers\_nics\_firewallrules\_patch**

> FirewallRule datacenters\_servers\_nics\_firewallrules\_patch(datacenter\_id, server\_id, nic\_id, firewallrule\_id, firewallrule, pretty=pretty, depth=depth, x\_contract\_number=x\_contract\_number)

Partially modify firewall rules

Update the properties of the specified firewall rule.

#### Example

```python
from __future__ import print_function
import time
import ionoscloud
from ionoscloud.rest import ApiException

# Defining the host is optional and defaults to https://api.ionos.com/cloudapi/v6
configuration = ionoscloud.Configuration(
    host = 'https://api.ionos.com/cloudapi/v6',
)

# Example of configuring HTTP Basic Authorization
configuration.username = 'YOUR_USERNAME'
configuration.password = 'YOUR_PASSWORD'

with ionoscloud.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = ionoscloud.FirewallRulesApi(api_client)
    datacenter_id = 'datacenter_id_example' # str | The unique ID of the data center.
    server_id = 'server_id_example' # str | The unique ID of the server.
    nic_id = 'nic_id_example' # str | The unique ID of the NIC.
    firewallrule_id = 'firewallrule_id_example' # str | The unique ID of the firewall rule.
    firewallrule = ionoscloud.FirewallruleProperties() # FirewallruleProperties | The properties of the firewall rule to be updated.
    try:
        # Partially modify firewall rules
        api_response = api_instance.datacenters_servers_nics_firewallrules_patch(datacenter_id, server_id, nic_id, firewallrule_id, firewallrule)
        print(api_response)
    except ApiException as e:
        print('Exception when calling FirewallRulesApi.datacenters_servers_nics_firewallrules_patch: %s\n' % e)
```

#### Parameters

| Name                    | Type                                                                                                                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                          |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| **datacenter\_id**      | **str**                                                                                                                          | The unique ID of the data center.                                                                                                                                                                                                                                                                                                                                                                                                        |                                |
| **server\_id**          | **str**                                                                                                                          | The unique ID of the server.                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **nic\_id**             | **str**                                                                                                                          | The unique ID of the NIC.                                                                                                                                                                                                                                                                                                                                                                                                                |                                |
| **firewallrule\_id**    | **str**                                                                                                                          | The unique ID of the firewall rule.                                                                                                                                                                                                                                                                                                                                                                                                      |                                |
| **firewallrule**        | [**FirewallruleProperties**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallruleproperties) | The properties of the firewall rule to be updated.                                                                                                                                                                                                                                                                                                                                                                                       |                                |
| **pretty**              | **bool**                                                                                                                         | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional] \[default to True] |
| **depth**               | **int**                                                                                                                          | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional] \[default to 0]    |
| **x\_contract\_number** | **int**                                                                                                                          | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                    |

#### Return type

[**FirewallRule**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallrule)

#### Authorization

Basic Authentication, Token Authentication

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **datacenters\_servers\_nics\_firewallrules\_post**

> FirewallRule datacenters\_servers\_nics\_firewallrules\_post(datacenter\_id, server\_id, nic\_id, firewallrule, pretty=pretty, depth=depth, x\_contract\_number=x\_contract\_number)

Create a Firewall Rule

Creates a firewall rule for the specified NIC.

#### Example

```python
from __future__ import print_function
import time
import ionoscloud
from ionoscloud.rest import ApiException

# Defining the host is optional and defaults to https://api.ionos.com/cloudapi/v6
configuration = ionoscloud.Configuration(
    host = 'https://api.ionos.com/cloudapi/v6',
)

# Example of configuring HTTP Basic Authorization
configuration.username = 'YOUR_USERNAME'
configuration.password = 'YOUR_PASSWORD'

with ionoscloud.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = ionoscloud.FirewallRulesApi(api_client)
    datacenter_id = 'datacenter_id_example' # str | The unique ID of the data center.
    server_id = 'server_id_example' # str | The unique ID of the server.
    nic_id = 'nic_id_example' # str | The unique ID of the NIC.
    firewallrule = ionoscloud.FirewallRule() # FirewallRule | The firewall rule to create.
    try:
        # Create a Firewall Rule
        api_response = api_instance.datacenters_servers_nics_firewallrules_post(datacenter_id, server_id, nic_id, firewallrule)
        print(api_response)
    except ApiException as e:
        print('Exception when calling FirewallRulesApi.datacenters_servers_nics_firewallrules_post: %s\n' % e)
```

#### Parameters

| Name                    | Type                                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                          |
| ----------------------- | ------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| **datacenter\_id**      | **str**                                                                                                      | The unique ID of the data center.                                                                                                                                                                                                                                                                                                                                                                                                        |                                |
| **server\_id**          | **str**                                                                                                      | The unique ID of the server.                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **nic\_id**             | **str**                                                                                                      | The unique ID of the NIC.                                                                                                                                                                                                                                                                                                                                                                                                                |                                |
| **firewallrule**        | [**FirewallRule**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallrule) | The firewall rule to create.                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **pretty**              | **bool**                                                                                                     | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional] \[default to True] |
| **depth**               | **int**                                                                                                      | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional] \[default to 0]    |
| **x\_contract\_number** | **int**                                                                                                      | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                    |

#### Return type

[**FirewallRule**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallrule)

#### Authorization

Basic Authentication, Token Authentication

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## **datacenters\_servers\_nics\_firewallrules\_put**

> FirewallRule datacenters\_servers\_nics\_firewallrules\_put(datacenter\_id, server\_id, nic\_id, firewallrule\_id, firewallrule, pretty=pretty, depth=depth, x\_contract\_number=x\_contract\_number)

Modify a Firewall Rule

Modifies the properties of the specified firewall rule.

#### Example

```python
from __future__ import print_function
import time
import ionoscloud
from ionoscloud.rest import ApiException

# Defining the host is optional and defaults to https://api.ionos.com/cloudapi/v6
configuration = ionoscloud.Configuration(
    host = 'https://api.ionos.com/cloudapi/v6',
)

# Example of configuring HTTP Basic Authorization
configuration.username = 'YOUR_USERNAME'
configuration.password = 'YOUR_PASSWORD'

with ionoscloud.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = ionoscloud.FirewallRulesApi(api_client)
    datacenter_id = 'datacenter_id_example' # str | The unique ID of the data center.
    server_id = 'server_id_example' # str | The unique ID of the server.
    nic_id = 'nic_id_example' # str | The unique ID of the NIC.
    firewallrule_id = 'firewallrule_id_example' # str | The unique ID of the firewall rule.
    firewallrule = ionoscloud.FirewallRule() # FirewallRule | The modified firewall rule.
    try:
        # Modify a Firewall Rule
        api_response = api_instance.datacenters_servers_nics_firewallrules_put(datacenter_id, server_id, nic_id, firewallrule_id, firewallrule)
        print(api_response)
    except ApiException as e:
        print('Exception when calling FirewallRulesApi.datacenters_servers_nics_firewallrules_put: %s\n' % e)
```

#### Parameters

| Name                    | Type                                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                          |
| ----------------------- | ------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| **datacenter\_id**      | **str**                                                                                                      | The unique ID of the data center.                                                                                                                                                                                                                                                                                                                                                                                                        |                                |
| **server\_id**          | **str**                                                                                                      | The unique ID of the server.                                                                                                                                                                                                                                                                                                                                                                                                             |                                |
| **nic\_id**             | **str**                                                                                                      | The unique ID of the NIC.                                                                                                                                                                                                                                                                                                                                                                                                                |                                |
| **firewallrule\_id**    | **str**                                                                                                      | The unique ID of the firewall rule.                                                                                                                                                                                                                                                                                                                                                                                                      |                                |
| **firewallrule**        | [**FirewallRule**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallrule) | The modified firewall rule.                                                                                                                                                                                                                                                                                                                                                                                                              |                                |
| **pretty**              | **bool**                                                                                                     | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional] \[default to True] |
| **depth**               | **int**                                                                                                      | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional] \[default to 0]    |
| **x\_contract\_number** | **int**                                                                                                      | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                    |

#### Return type

[**FirewallRule**](https://docs.ionos.com/sections-test/python-sdk/cloud-api-python-sdk/models/firewallrule)

#### Authorization

Basic Authentication, Token Authentication

#### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json
