SnoopScan
Endpoints

Domain screen

Check up to 500 domain names in one call to see which are available. Cut a drop list down to a shortlist, then run a report on the few that matter.

POST /v1/domain/screen

Request

Send a JSON body with a URL (or a list) and any options. The response holds data and what the call cost.

import requestsr = requests.post(    'https://api.snoopscan.com/v1/domain/screen',    headers={'Authorization': 'Bearer sk_YOUR_KEY'},    json={        'domains': [            'example.com',            'example.io',            'example.net'        ],        'dns': True    },)print(r.json())
const r = await fetch('https://api.snoopscan.com/v1/domain/screen', {  method: 'POST',  headers: { Authorization: 'Bearer sk_YOUR_KEY', 'Content-Type': 'application/json' },  body: JSON.stringify({      "domains": [          "example.com",          "example.io",          "example.net"      ],      "dns": true  }),});console.log(await r.json());
curl -X POST https://api.snoopscan.com/v1/domain/screen \  -H 'Authorization: Bearer sk_YOUR_KEY' \  -H 'Content-Type: application/json' \  -d '{    "domains": [        "example.com",        "example.io",        "example.net"    ],    "dns": true}'
Returns availability · up to 500 names · 1 credit a name.

Parameters

FieldTypeDefaultWhat it does
domains required array of string — Up to 500 domains, or URLs on them. Duplicates are checked once.
dns boolean true Check DNS for names the registry has no record of, so they can read likely_available. Off, they read no_registry_record.

Response

A success returns {"success": true, "data": {…}}. data holds the formats you asked for, the page's metadata, and a cost object with what the call was charged. A failure returns {"success": false, "error": {…}} with an error code. See Errors.

Failed requests are not charged. Re-reading a page you already fetched, within maxAge, is free. See Credits for every rate.