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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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.BaseResourceParameters: 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)¶
-