Open Domains API
 1.0.0 
OAS 3.0

The Open Domains public API lets you programmatically check subdomain availability, perform RDAP lookups, list DNS records, request new subdomains, and submit edit requests.

Supported Domains

This API manages DNS records across the following domains: living-the.life, localplayer.dev, is-not-a.dev, is-local.org, is-cool.dev, is-a-fullstack.dev

Authentication

Write operations (POST) require a Bearer API token. You can generate one in your Settings page, or obtain one programmatically using the Device OAuth flow described below.

Authorization: Bearer od_xxxxxxxxxxxxxxxx

Device OAuth Flow

For CLI tools, scripts, or applications that need to obtain an API token on behalf of a logged-in user, Open Domains supports a Device Authorization flow (similar to OAuth 2.0 Device Flow — RFC 8628).

Steps

1. Request a device code

POST https://api.open-domains.net/deviceAuth
Content-Type: application/json

{ "action": "request_code", "token_name": "My CLI Tool" }

Returns:

{
  "device_code": "...",
  "user_code": "ABCD-1234",
  "verification_uri": "https://open-domains.com/activate",
  "expires_in": 600
}

2. Direct the user to the verification URL

Show the user their user_code and ask them to visit /activate (or your app's activation page). They log in and approve the code there.

3. Poll for the API key

While the user is approving, poll every ~2 seconds:

POST https://api.open-domains.net/deviceAuth
Content-Type: application/json

{ "action": "poll", "device_code": "<device_code from step 1>" }

Possible responses:

statusMeaning
pendingUser hasn't approved yet — keep polling
approvedSuccess! api_key is included in response
deniedUser denied — stop polling
expiredCode expired (10 min) — restart the flow

On approved, the response includes your API key:

{ "status": "approved", "api_key": "od_xxxxxxxxxxxxxxxx" }

Store this key securely and use it in the Authorization: Bearer header for all authenticated requests.

Servers

Device OAuth

default