ns1.rest¶
A thin layer over the NS1 REST API
-
exception
ns1.rest.errors.
AuthException
(message, response=None, body=None)¶
-
exception
ns1.rest.errors.
RateLimitException
(message, response=None, body=None, by=None, limit=None, remaining=None, period=None)¶
-
exception
ns1.rest.errors.
ResourceException
(message, response=None, body=None)¶ Bases:
exceptions.Exception
-
class
ns1.rest.resource.
BaseResource
(config)¶ Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= []¶
-
DEFAULT_TRANSPORT
= 'requests'¶
-
INT_FIELDS
= []¶
-
PASSTHRU_FIELDS
= []¶
-
-
class
ns1.rest.data.
Feed
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
PASSTHRU_FIELDS
= ['name', 'config']¶
-
ROOT
= 'data/feeds'¶
-
create
(sourceid, name, config, callback=None, errback=None, **kwargs)¶
-
delete
(sourceid, feedid, callback=None, errback=None)¶
-
list
(sourceid, callback=None, errback=None)¶
-
retrieve
(sourceid, feedid, callback=None, errback=None)¶
-
update
(sourceid, feedid, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.data.
Source
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
PASSTHRU_FIELDS
= ['name', 'config']¶
-
ROOT
= 'data/sources'¶
-
create
(name, sourcetype, callback=None, errback=None, **kwargs)¶ The only supported kwarg is config.
-
delete
(sourceid, callback=None, errback=None)¶
-
list
(callback=None, errback=None)¶
-
publish
(sourceid, data, callback=None, errback=None)¶
-
retrieve
(sourceid, callback=None, errback=None)¶
-
update
(sourceid, sourcetype, callback=None, errback=None, **kwargs)¶ Note that sourcetype is required, but cannot be changed by this method.
Supported kwargs are: name, config.
-
-
class
ns1.rest.stats.
Stats
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
ROOT
= 'stats'¶
-
qps
(zone=None, domain=None, type=None, callback=None, errback=None)¶
-
usage
(zone=None, domain=None, type=None, callback=None, errback=None, **kwargs)¶
-
-
ns1.rest.stats.
stats_usage_pagination
(curr_json, next_json)¶
-
class
ns1.rest.records.
Records
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= ['use_client_subnet', 'use_csubnet', 'override_ttl']¶
-
INT_FIELDS
= ['ttl']¶
-
PASSTHRU_FIELDS
= ['networks', 'meta', 'regions', 'link']¶
-
ROOT
= 'zones'¶
-
create
(zone, domain, type, callback=None, errback=None, **kwargs)¶
-
create_raw
(zone, domain, type, body, callback=None, errback=None, **kwargs)¶
-
delete
(zone, domain, type, callback=None, errback=None)¶
-
retrieve
(zone, domain, type, callback=None, errback=None)¶
-
update
(zone, domain, type, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.zones.
Zones
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= ['dnssec']¶
-
INT_FIELDS
= ['ttl', 'retry', 'refresh', 'expiry', 'nx_ttl']¶
-
PASSTHRU_FIELDS
= ['primary', 'secondary', 'hostmaster', 'meta', 'networks', 'link', 'primary_master', 'tags']¶
-
ROOT
= 'zones'¶
-
SEARCH_ROOT
= 'search'¶
-
activate_version
(zone, version_id, callback=None, errback=None)¶
-
create
(zone, callback=None, errback=None, **kwargs)¶
-
create_version
(zone, force=False, callback=None, errback=None)¶
-
delete
(zone, callback=None, errback=None)¶
-
delete_version
(zone, version_id, callback=None, errback=None)¶
-
import_file
(zone, zoneFile, callback=None, errback=None, **kwargs)¶
-
list
(callback=None, errback=None)¶
-
list_versions
(zone, callback=None, errback=None)¶
-
retrieve
(zone, callback=None, errback=None)¶
-
search
(query, type='all', expand=True, max=None, callback=None, errback=None)¶
-
update
(zone, callback=None, errback=None, **kwargs)¶
-
-
ns1.rest.zones.
zone_list_pagination
(curr_json, next_json)¶
-
ns1.rest.zones.
zone_retrieve_pagination
(curr_json, next_json)¶
-
class
ns1.rest.ipam.
Addresses
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= ['parent']¶
-
INT_FIELDS
= ['network_id', 'address_id', 'root_address_id', ' merged_address_id', 'scope_group_id']¶
-
PASSTHRU_FIELDS
= ['prefix', 'status', 'desc', 'tags', 'reserve']¶
-
ROOT
= 'ipam/address'¶
-
create
(callback=None, errback=None, parent=True, **kwargs)¶
-
delete
(address_id, callback=None, errback=None)¶
-
list
(callback=None, errback=None)¶
-
report
(address_id, callback=None, errback=None)¶
-
retrieve
(address_id, callback=None, errback=None)¶
-
retrieve_children
(address_id, callback=None, errback=None)¶
-
retrieve_dhcp_option
(address_id, callback=None, errback=None)¶
-
retrieve_parent
(address_id, callback=None, errback=None)¶
-
search
(network_id, prefix, callback=None, errback=None)¶
-
update
(address_id, callback=None, errback=None, parent=True, **kwargs)¶
-
-
class
ns1.rest.ipam.
Leases
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= []¶
-
INT_FIELDS
= ['scope_group_id', 'scope_id', 'limit', 'offset']¶
-
PASSTHRU_FIELDS
= []¶
-
ROOT
= 'dhcp/lease'¶
-
list
(scope_group_id=None, scope_id=None, limit=None, offset=None, callback=None, errback=None)¶
-
-
class
ns1.rest.ipam.
Networks
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= []¶
-
INT_FIELDS
= ['network_id']¶
-
PASSTHRU_FIELDS
= ['rt', 'name', 'desc', 'tags']¶
-
ROOT
= 'ipam/network'¶
-
create
(callback=None, errback=None, **kwargs)¶
-
delete
(network_id, callback=None, errback=None)¶
-
list
(callback=None, errback=None, expand=True)¶
-
report
(network_id, callback=None, errback=None)¶
-
retrieve
(network_id, callback=None, errback=None, expand=True)¶
-
update
(network_id, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.ipam.
Optiondefs
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= ['standard']¶
-
INT_FIELDS
= ['code']¶
-
PASSTHRU_FIELDS
= ['space', 'key', 'friendly_name', 'description', 'schema']¶
-
ROOT
= 'dhcp/optiondef'¶
-
create
(space, key, callback=None, errback=None, **kwargs)¶
-
delete
(space, key, callback=None, errback=None)¶
-
list
(callback=None, errback=None)¶
-
retrieve
(space, key, callback=None, errback=None)¶
-
-
class
ns1.rest.ipam.
Reservations
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= ['dhcpv6']¶
-
INT_FIELDS
= ['scope_group_id', 'address_id']¶
-
PASSTHRU_FIELDS
= ['mac', 'options', 'tags']¶
-
ROOT
= 'dhcp/reservation'¶
-
create
(scopegroup_id, address_id, options, callback=None, errback=None, **kwargs)¶
-
delete
(reservation_id, callback=None, errback=None)¶
-
list
(scopegroup_id, callback=None, errback=None)¶
-
retrieve
(reservation_id, callback=None, errback=None)¶
-
classmethod
select_from_list
(result, address_id)¶
-
update
(reservation_id, options, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.ipam.
Scopegroups
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
BOOL_FIELDS
= ['enabled', 'echo_client_id']¶
-
INT_FIELDS
= ['id', 'dhcp_service_id', 'valid_lifetime_secs']¶
-
PASSTHRU_FIELDS
= ['dhcpv4', 'dhcpv6', 'name', 'tags']¶
-
ROOT
= 'dhcp/scopegroup'¶
-
create
(callback=None, errback=None, **kwargs)¶
-
delete
(scopegroup_id, callback=None, errback=None)¶
-
list
(callback=None, errback=None)¶
-
retrieve
(scope_group_id, callback=None, errback=None)¶
-
update
(scope_group_id, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.ipam.
Scopes
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
INT_FIELDS
= ['scope_group_id', 'address_id', 'valid_lifetime_secs']¶
-
PASSTHRU_FIELDS
= ['options', 'tags']¶
-
ROOT
= 'dhcp/scope'¶
-
create
(scopegroup_id, address_id, options, callback=None, errback=None, **kwargs)¶
-
delete
(scope_id, callback=None, errback=None)¶
-
list
(scopegroup_id, callback=None, errback=None)¶
-
retrieve
(scope_id, callback=None, errback=None)¶
-
classmethod
select_from_list
(result, scope_id)¶
-
update
(scope_id, address_id, options, scopegroup_id=None, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.team.
Team
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
PASSTHRU_FIELDS
= ['name', 'ip_whitelist', 'permissions']¶
-
ROOT
= 'account/teams'¶
-
create
(name, callback=None, errback=None, **kwargs)¶
-
delete
(team_id, callback=None, errback=None)¶
-
list
(callback=None, errback=None)¶
-
retrieve
(team_id, callback=None, errback=None)¶
-
update
(team_id, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.user.
User
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
PASSTHRU_FIELDS
= ['name', 'username', 'email', 'teams', 'notify', 'ip_whitelist', 'ip_whitelist_strict', 'permissions']¶
-
ROOT
= 'account/users'¶
-
create
(name, username, email, callback=None, errback=None, **kwargs)¶
-
delete
(username, callback=None, errback=None)¶
-
list
(callback=None, errback=None)¶
-
retrieve
(username, callback=None, errback=None)¶
-
update
(username, callback=None, errback=None, **kwargs)¶
-
-
class
ns1.rest.apikey.
APIKey
(config)¶ Bases:
ns1.rest.resource.BaseResource
Parameters: config (ns1.config.Config) – config object used to build requests -
PASSTHRU_FIELDS
= ['name', 'teams', 'ip_whitelist', 'ip_whitelist_strict', 'permissions']¶
-
ROOT
= 'account/apikeys'¶
-
create
(name, callback=None, errback=None, **kwargs)¶
-
delete
(apikey_id, callback=None, errback=None)¶
-
list
(callback=None, errback=None)¶
-
retrieve
(apikey_id, callback=None, errback=None)¶
-
update
(apikey_id, callback=None, errback=None, **kwargs)¶
-