Skip to main content
Every nextdns.api.* operation is listed below with parameter shapes and return types from the plugin Zod schemas.
New to Corsair? See API access, authentication, and error handling.

Allowlist

add

allowlist.add Allow a domain Risk: write
Input Output

delete

allowlist.delete Remove a domain from the allowlist Risk: write
Input Output

get

allowlist.get List allowed domains Risk: read
Input Output: object[]

replace

allowlist.replace Replace the entire allowlist Risk: destructive
Input
Output: object[]

update

allowlist.update Toggle an allowlist entry active/inactive Risk: write
Input Output

Analytics

destinations

analytics.destinations Get query-destination analytics Risk: read
Input Output

devices

analytics.devices Get per-device analytics Risk: read
Input Output

dnssec

analytics.dnssec Get DNSSEC validation analytics Risk: read
Input Output

domains

analytics.domains Get per-domain analytics Risk: read
Input Output

encryption

analytics.encryption Get encrypted-vs-plain DNS analytics Risk: read
Input Output

ips

analytics.ips Get per-client-IP analytics Risk: read
Input Output

ipVersions

analytics.ipVersions Get IPv4/IPv6 distribution analytics Risk: read
Input Output

protocols

analytics.protocols Get DNS protocol distribution analytics Risk: read
Input Output

queryTypes

analytics.queryTypes Get DNS query-type analytics Risk: read
Input Output

reasons

analytics.reasons Get blocking-reason analytics Risk: read
Input Output

status

analytics.status Get query-status analytics Risk: read
Input Output

Auth

login

auth.login Verify the API key is valid Risk: read
Input: empty object Output

Denylist

add

denylist.add Block a domain Risk: write
Input Output

list

denylist.list List blocked domains Risk: read
Input Output: object[]

remove

denylist.remove Unblock a domain Risk: write
Input Output

replace

denylist.replace Replace the entire denylist Risk: destructive
Input
Output: object[]

update

denylist.update Toggle a denylist entry active/inactive Risk: write
Input Output

Logs

clear

logs.clear Clear all stored query logs - cannot be undone Risk: destructive · Irreversible
Input Output

download

logs.download Download the CSV log export Risk: read
Input Output: string

get

logs.get Get raw or filtered DNS query logs Risk: read
Input Output

Parental Control

addCategory

parentalControl.addCategory Block or allow a content category Risk: write
Input Output

addService

parentalControl.addService Block or allow a specific service Risk: write
Input Output

deleteCategory

parentalControl.deleteCategory Remove a content category restriction Risk: write
Input Output

deleteService

parentalControl.deleteService Remove a service restriction Risk: write
Input Output

get

parentalControl.get Get parental control settings Risk: read
Input Output

getCategories

parentalControl.getCategories Get blocked/allowed content categories Risk: read
Input Output: object[]

getServices

parentalControl.getServices Get blocked/allowed services Risk: read
Input Output: object[]

replaceCategories

parentalControl.replaceCategories Replace the entire set of category restrictions Risk: destructive
Input
Output: object[]

replaceServices

parentalControl.replaceServices Replace the entire set of service restrictions Risk: destructive
Input
Output: object[]

update

parentalControl.update Update safe search, YouTube restricted mode, or bypass blocking Risk: write
Input Output

updateCategory

parentalControl.updateCategory Toggle a content category restriction Risk: write
Input Output

updateService

parentalControl.updateService Toggle a service restriction Risk: write
Input Output

Privacy

addBlocklist

privacy.addBlocklist Enable an additional privacy blocklist Risk: write
Input Output

addNative

privacy.addNative Block a native tracking service from a specific vendor Risk: write
Input Output

deleteBlocklist

privacy.deleteBlocklist Remove a privacy blocklist Risk: write
Input Output

deleteNative

privacy.deleteNative Unblock a native tracking service Risk: write
Input Output

get

privacy.get Get privacy settings Risk: read
Input Output

replaceBlocklists

privacy.replaceBlocklists Replace the entire set of enabled privacy blocklists Risk: destructive
Input Output: object[]

replaceNatives

privacy.replaceNatives Replace the entire set of blocked native trackers Risk: destructive
Input Output: object[]

update

privacy.update Update disguised-tracker and affiliate-link settings Risk: write
Input
Output

Profiles

create

profiles.create Create a new profile Risk: write
Input
Output

delete

profiles.delete Delete a profile - cannot be undone Risk: destructive · Irreversible
Input Output

get

profiles.get Get full profile details including nested settings and lists Risk: read
Input Output

list

profiles.list List every profile the API key can see Risk: read
Input: empty object Output: object[]

rename

profiles.rename Rename a profile Risk: write
Input Output

update

profiles.update Partially update a profile Risk: write
Input
Output

Rewrites

add

rewrites.add Add a DNS rewrite rule Risk: write
Input Output

delete

rewrites.delete Delete a DNS rewrite rule Risk: write
Input Output

get

rewrites.get List DNS rewrite rules Risk: read
Input Output: object[]

Security

addBlockedTld

security.addBlockedTld Add a top-level domain to the security blocklist Risk: write
Input Output

get

security.get Get security settings Risk: read
Input Output

getTlds

security.getTlds Get blocked top-level domains Risk: read
Input Output: object[]

removeBlockedTld

security.removeBlockedTld Remove a top-level domain from the security blocklist Risk: write
Input Output

replaceTlds

security.replaceTlds Replace the entire blocked-TLD list Risk: destructive
Input Output: object[]

update

security.update Update multiple security settings in one call Risk: write
Input Output

Settings

get

settings.get Get all settings for a profile Risk: read
Input Output

getBlockPage

settings.getBlockPage Get block page settings Risk: read
Input Output

getLogs

settings.getLogs Get logging settings Risk: read
Input Output

getPerformance

settings.getPerformance Get performance settings (ECS, cache boost, CNAME flattening) Risk: read
Input Output

logClientIps

settings.logClientIps Enable or disable logging of client IPs Risk: write
Input Output

logDomains

settings.logDomains Enable or disable logging of queried domains Risk: write
Input Output

update

settings.update Update multiple settings categories in one call Risk: write
Input
Output

updateBlockPage

settings.updateBlockPage Enable or disable the branded block page Risk: write
Input Output

updateLogs

settings.updateLogs Update log retention, storage location, and privacy options Risk: write
Input Output

updatePerformance

settings.updatePerformance Update performance optimization settings Risk: write
Input Output

Setup

updateLinkedIp

setup.updateLinkedIp Update the profile’s Linked IP to the caller’s current public IP Risk: write
Input Output