nss_servers

The following methods allow for interaction with the ZIA NSS Servers API endpoints.

Methods are accessible via zia.nss_servers

Copyright (c) 2023, Zscaler Inc.

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

class NssServersAPI

Bases: APIClient

A Client object for the nss servers resource.

add_nss_server(**kwargs)

Creates a new ZIA NSS server.

Parameters:
  • name (str) – The name of the NSS server.

  • **kwargs – Optional keyword arguments.

Keyword Arguments:
  • status (str) – Enables or disables the status of the NSS server. Supported values: ENABLED, DISABLED, DISABLED_BY_SERVICE_PROVIDER, NOT_PROVISIONED_IN_SERVICE_PROVIDER, IN_TRIAL

  • type (str) – The type of the NSS server. Supported values: NONE, SOFTWARE_AA_FLAG, NSS_FOR_WEB, NSS_FOR_FIREWALL, VZEN, VZEN_SME, VZEN_SMLB, PINNED_NSS, MD5_CAPABLE, ADP, ZIRSVR, NSS_FOR_ZPA

Returns:

A tuple containing the newly added NSS server, response, and error.

Return type:

tuple

Examples

Add a new NSS server:

>>> added_server, _, error = client.zia.nss_servers.add_nss_server(
...     name=f"NSSServer_{random.randint(1000, 10000)}",
...     status='ENABLED',
...     type='NSS_FOR_FIREWALL',
... )
>>> if error:
...     print(f"Error adding NSS server: {error}")
... else:
...     print(f"NSS server added successfully: {added_server.as_dict()}")
delete_nss_server(nss_id)

Deletes the specified nss server.

Parameters:

nss_id (str) – The unique identifier of the nss server.

Returns:

A tuple containing the response object and error (if any).

Return type:

tuple

Examples

List nss server:

>>> _, _, error = client.zia.nss_servers.delete_nss_server('73459')
>>> if error:
...     print(f"Error deleting nss server: {error}")
...     return
... print(f"nss server with ID {'73459' deleted successfully.")
get_nss_server(nss_id)

Fetches a specific nss servers by ID.

Parameters:

nss_id (int) – The unique identifier for the nss server.

Returns:

A tuple containing (nss server instance, Response, error).

Return type:

tuple

Examples

Print a specific nss server

>>> fetched_nss_server, _, error = client.zia.nss_servers.get_nss_server(
    '1254654')
>>> if error:
...     print(f"Error fetching nss server by ID: {error}")
...     return
... print(f"Fetched nss server by ID: {fetched_nss_server.as_dict()}")
list_nss_servers(query_params=None)

Lists NSS servers in your organization.

Parameters:

{dict} (query_params) – Map of query parameters for the request. [query_params.type] {str}: Filtering results by type. The most common key is “type”, which filters NSS servers by type. Supported values include: - NONE - SOFTWARE_AA_FLAG - NSS_FOR_WEB - NSS_FOR_FIREWALL - VZEN - VZEN_SME - VZEN_SMLB - PINNED_NSS - MD5_CAPABLE - ADP - ZIRSVR - NSS_FOR_ZPA

Returns:

A tuple containing a list of NSS server instances, the raw response, and any error.

Return type:

tuple

Examples

List all NSS servers:

>>> nss_list, _, error = client.zia.nss_servers.list_nss_servers()
>>> if error:
...     print(f"Error listing NSS servers: {error}")
... else:
...     print(f"Total NSS servers found: {len(nss_list)}")
...     for nss in nss_list:
...         print(nss.as_dict())

Filter NSS servers by type:

>>> nss_list, _, error = client.zia.nss_servers.list_nss_servers(
...     query_params={'type': 'NSS_FOR_FIREWALL'})
>>> if error:
...     print(f"Error listing NSS servers: {error}")
... else:
...     for nss in nss_list:
...         print(nss.as_dict())
update_nss_server(nss_id, **kwargs)

Updates information for the specified ZIA nss server.

Parameters:

nss_id (int) – The unique ID for the nss server.

Returns:

A tuple containing the updated nss server, response, and error.

Return type:

tuple

Examples

Update a existing nss server :

>>> updated_server, _, error = client.zia.nss_servers.update_nss_server(
... nss_id='12343',
... name=f"UpdateNSSServer_{random.randint(1000, 10000)}",
... status='ENABLED',
... type='NSS_FOR_FIREWALL',
... )
>>> if error:
...     print(f"Error updating nss server: {error}")
...     return
... print(f"nss server updated successfully: {added_server.as_dict()}")