{"__v":16,"_id":"5542b4d2b7f4540d00fcee7d","api":{"auth":"required","params":[],"results":{"codes":[]},"settings":"","url":""},"body":"The Domainr API lets you programmatically interact with [Domainr](https://domainr.com/), the instant domain autocomplete and search engine.\n\nIt has three methods — `search`, `status`, and `register` — each of which responds to a `GET` request.\n\nThe API server will respond identically on port `80` (http) and port `443` (https).\n\n## Try it for free\n\nUse the Domainr API [for free at Mashape](https://www.mashape.com/domainr/domainr).\n\nFor high-volume commercial usage, [contact us](mailto:partners@domainr.com)\n\n## Endpoints\n\n- `https://domainr.p.mashape.com/` — Mashape developers\n- `https://api.domainr.com/` — high-volume commercial developers\n\n## News and Updates\n\nJoin the [domainr-api announcement list](https://groups.io/org/groupsio/domainr-api) for infrequent updates.\n\nSubscribe by email: [domainr-api+subscribe@groups.io](mailto:domainr-api+subscribe@groups.io)\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Example request\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"/v2/search?query=acme%20cafe\",\n      \"language\": \"http\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:textarea]\n{\n  \"text\": \"API arguments should be URL-encoded UTF-8 strings in the querystring of the request URL.\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Example response\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n\\tresults: [{\\n\\t\\tdomain: \\\"acme.cafe\\\",\\n\\t\\thost: \\\"\\\",\\n\\t\\tsubdomain: \\\"acme.\\\",\\n\\t\\tzone: \\\"cafe\\\",\\n\\t\\tpath: \\\"\\\",\\n\\t\\tregisterURL: \\\"https://api.domainr.com/v2/register?domain=acme.cafe&registrar=&source=api\\\"\\n  ]}\\n}\",\n      \"language\": \"json\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:textarea]\n{\n  \"text\": \"Responses are in [JSON](http://www.json.org/) format (`application/json`). On success or failure, the server will respond with an appropriate HTTP response code (2xx, 4xx, 5xx).\",\n  \"sidebar\": true\n}\n[/block]","category":"5542b4d1b7f4540d00fcee78","createdAt":"2015-04-24T18:43:57.289Z","excerpt":"","githubsync":"","hidden":false,"isReference":false,"link_external":false,"link_url":"","order":0,"project":"553a8eeb861cb10d00e32915","slug":"overview","sync_unique":"","title":"Overview","type":"basic","updates":[],"user":"553a8eb82af5f20d000fc30c","version":"5542b4d1b7f4540d00fcee77","childrenPages":[]}

Overview


The Domainr API lets you programmatically interact with [Domainr](https://domainr.com/), the instant domain autocomplete and search engine. It has three methods — `search`, `status`, and `register` — each of which responds to a `GET` request. The API server will respond identically on port `80` (http) and port `443` (https). ## Try it for free Use the Domainr API [for free at Mashape](https://www.mashape.com/domainr/domainr). For high-volume commercial usage, [contact us](mailto:partners@domainr.com) ## Endpoints - `https://domainr.p.mashape.com/` — Mashape developers - `https://api.domainr.com/` — high-volume commercial developers ## News and Updates Join the [domainr-api announcement list](https://groups.io/org/groupsio/domainr-api) for infrequent updates. Subscribe by email: [domainr-api+subscribe@groups.io](mailto:domainr-api+subscribe@groups.io) [block:api-header] { "type": "basic", "title": "Example request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?query=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:textarea] { "text": "API arguments should be URL-encoded UTF-8 strings in the querystring of the request URL.", "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "Example response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "{\n\tresults: [{\n\t\tdomain: \"acme.cafe\",\n\t\thost: \"\",\n\t\tsubdomain: \"acme.\",\n\t\tzone: \"cafe\",\n\t\tpath: \"\",\n\t\tregisterURL: \"https://api.domainr.com/v2/register?domain=acme.cafe&registrar=&source=api\"\n ]}\n}", "language": "json" } ], "sidebar": true } [/block] [block:textarea] { "text": "Responses are in [JSON](http://www.json.org/) format (`application/json`). On success or failure, the server will respond with an appropriate HTTP response code (2xx, 4xx, 5xx).", "sidebar": true } [/block]
The Domainr API lets you programmatically interact with [Domainr](https://domainr.com/), the instant domain autocomplete and search engine. It has three methods — `search`, `status`, and `register` — each of which responds to a `GET` request. The API server will respond identically on port `80` (http) and port `443` (https). ## Try it for free Use the Domainr API [for free at Mashape](https://www.mashape.com/domainr/domainr). For high-volume commercial usage, [contact us](mailto:partners@domainr.com) ## Endpoints - `https://domainr.p.mashape.com/` — Mashape developers - `https://api.domainr.com/` — high-volume commercial developers ## News and Updates Join the [domainr-api announcement list](https://groups.io/org/groupsio/domainr-api) for infrequent updates. Subscribe by email: [domainr-api+subscribe@groups.io](mailto:domainr-api+subscribe@groups.io) [block:api-header] { "type": "basic", "title": "Example request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?query=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:textarea] { "text": "API arguments should be URL-encoded UTF-8 strings in the querystring of the request URL.", "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "Example response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "{\n\tresults: [{\n\t\tdomain: \"acme.cafe\",\n\t\thost: \"\",\n\t\tsubdomain: \"acme.\",\n\t\tzone: \"cafe\",\n\t\tpath: \"\",\n\t\tregisterURL: \"https://api.domainr.com/v2/register?domain=acme.cafe&registrar=&source=api\"\n ]}\n}", "language": "json" } ], "sidebar": true } [/block] [block:textarea] { "text": "Responses are in [JSON](http://www.json.org/) format (`application/json`). On success or failure, the server will respond with an appropriate HTTP response code (2xx, 4xx, 5xx).", "sidebar": true } [/block]
{"__v":9,"_id":"5542b4d2b7f4540d00fcee7f","api":{"auth":"required","params":[],"results":{"codes":[{"status":200,"language":"json","code":"{}","name":""},{"status":400,"language":"json","code":"{}","name":""}]},"settings":"","url":""},"body":"The Domainr API requires authentication for all requests.\n\n[Mashape](https://www.mashape.com/domainr/domainr) users will use [your Mashape API key](http://docs.mashape.com/api-keys) and [the `mashape-key=` query parameter to authenticate](http://docs.mashape.com/auth-settings#query-parameters).\n\n- example query: `https://domainr.p.mashape.com/v2/search?mashape-key={your-Mashape-API-key}&query=acme%20cafe`\n\nHigh-volume commercial users will append a `client_id` parameter to authenticate — [contact us](mailto:partners@domainr.com) for details.\n\n## Cross-Domain and JSONP\n\nThe Domainr API supports [CORS](http://enable-cors.org) (Cross-Origin Resource Sharing) for cross-domain API access from the browser. API clients must whitelist their origin hosts prior to accessing the API. For example:\n\n `example.com www.example.com staging.example.com`\n\nNote: `localhost` (and equivalent IP addresses) are automatically whitelisted.\n\n**[Email us](mailto:partners@domainr.com)** if you need to update your list of origin hosts.\n\nTo query the Domainr API from a browser that does not support CORS, you can request a [JSONP](http://json-p.org) response by including the `callback` parameter with the name of a JavaScript function to call in any API URL.\n\n**Note:** all JSON requests will respond with a `200 OK` status to ensure the browser evaluates the response.\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Mashape\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"/v2/search?mashape-key={your-Mashape-key}&q=acme%20cafe\",\n      \"language\": \"http\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"High-volume\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"/v2/search?client_id={your-client-id}&q=acme%20cafe\",\n      \"language\": \"http\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:textarea]\n{\n  \"text\": \"\",\n  \"sidebar\": true\n}\n[/block]","category":"5542b4d1b7f4540d00fcee78","createdAt":"2015-04-29T22:20:35.553Z","excerpt":"","githubsync":"","hidden":false,"isReference":false,"link_external":false,"link_url":"","order":1,"project":"553a8eeb861cb10d00e32915","slug":"authentication","sync_unique":"","title":"Authentication","type":"basic","updates":[],"user":"553a8eb82af5f20d000fc30c","version":"5542b4d1b7f4540d00fcee77","childrenPages":[]}

Authentication


The Domainr API requires authentication for all requests. [Mashape](https://www.mashape.com/domainr/domainr) users will use [your Mashape API key](http://docs.mashape.com/api-keys) and [the `mashape-key=` query parameter to authenticate](http://docs.mashape.com/auth-settings#query-parameters). - example query: `https://domainr.p.mashape.com/v2/search?mashape-key={your-Mashape-API-key}&query=acme%20cafe` High-volume commercial users will append a `client_id` parameter to authenticate — [contact us](mailto:partners@domainr.com) for details. ## Cross-Domain and JSONP The Domainr API supports [CORS](http://enable-cors.org) (Cross-Origin Resource Sharing) for cross-domain API access from the browser. API clients must whitelist their origin hosts prior to accessing the API. For example: `example.com www.example.com staging.example.com` Note: `localhost` (and equivalent IP addresses) are automatically whitelisted. **[Email us](mailto:partners@domainr.com)** if you need to update your list of origin hosts. To query the Domainr API from a browser that does not support CORS, you can request a [JSONP](http://json-p.org) response by including the `callback` parameter with the name of a JavaScript function to call in any API URL. **Note:** all JSON requests will respond with a `200 OK` status to ensure the browser evaluates the response. [block:api-header] { "type": "basic", "title": "Mashape", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?mashape-key={your-Mashape-key}&q=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "High-volume", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?client_id={your-client-id}&q=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:textarea] { "text": "", "sidebar": true } [/block]
The Domainr API requires authentication for all requests. [Mashape](https://www.mashape.com/domainr/domainr) users will use [your Mashape API key](http://docs.mashape.com/api-keys) and [the `mashape-key=` query parameter to authenticate](http://docs.mashape.com/auth-settings#query-parameters). - example query: `https://domainr.p.mashape.com/v2/search?mashape-key={your-Mashape-API-key}&query=acme%20cafe` High-volume commercial users will append a `client_id` parameter to authenticate — [contact us](mailto:partners@domainr.com) for details. ## Cross-Domain and JSONP The Domainr API supports [CORS](http://enable-cors.org) (Cross-Origin Resource Sharing) for cross-domain API access from the browser. API clients must whitelist their origin hosts prior to accessing the API. For example: `example.com www.example.com staging.example.com` Note: `localhost` (and equivalent IP addresses) are automatically whitelisted. **[Email us](mailto:partners@domainr.com)** if you need to update your list of origin hosts. To query the Domainr API from a browser that does not support CORS, you can request a [JSONP](http://json-p.org) response by including the `callback` parameter with the name of a JavaScript function to call in any API URL. **Note:** all JSON requests will respond with a `200 OK` status to ensure the browser evaluates the response. [block:api-header] { "type": "basic", "title": "Mashape", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?mashape-key={your-Mashape-key}&q=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "High-volume", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?client_id={your-client-id}&q=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:textarea] { "text": "", "sidebar": true } [/block]
{"__v":11,"_id":"555d2aac15a89b0d00c1b0aa","api":{"auth":"required","params":[],"results":{"codes":[{"status":200,"language":"json","code":"{}","name":""},{"status":400,"language":"json","code":"{}","name":""}]},"settings":"","url":""},"body":"The Domainr API provides instant autocomplete results for domain registrars and resellers. You can use it to supplement your search boxes with instant results, while preserving your existing search landing pages.\n\n## Getting Started\n\nUsing the Domainr API is simple and straightforward — a web developer can have it working in just a few minutes:\n\n1) Add the [JavaScript code below](doc:javascript) to your site, and customize as needed.\n2) Use a Mashape key, or `client_id` from us if your use will be high-volume/\n3) Send us your `zones.txt` file address; see below for details\n\n\n\n## WHMCS\n\nIf you use [WHMCS](http://www.whmcs.com/) for your reseller site, you can easily use the JavaScript-based Domainr Search Box to add autocomplete to your site. Just [follow the instructions below](doc:javascript).\n\n## zones.txt — supported TLDs\n\nThe Domainr API can be restricted to only return results with your supported top-level domains — we maintain an internal mapping of supported TLDs, keyed by registrars' domain names.\n\nTo keep your listing current, publish a `zones.txt` file at the root of your website, listing your supported TLDs separated by newlines. Domainr will automatically ingest this file, and keep our internal mapping up to date.\n\nHere's an example `zones.txt` file: [https://uniregistry.com/zones.txt](https://uniregistry.com/zones.txt)\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Note\",\n  \"body\": \"The TLDs in your `zones.txt` file should be a strict subset of [the primary list at zonedb.org](https://github.com/zonedb/zonedb/blob/master/zones.txt).\\n\\nIf you don’t want to put the `zones.txt` file in the root directory of your website, you can link directly to the file in your homepage HTML:\\n\\n```html\\n<link rel=\\\"zones\\\" type=\\\"text/plain\\\" href=\\\"/zones.txt\\\">\\n```\"\n}\n[/block]\n\n\nFor example, if FooBarDomains' website is `foobardomains.com`, they would publish `foobardomains.com/zones.txt` with the following listing:\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"com\\nnet\\norg\\ncafe\\nphotos\\ncamera\\ncoffee\\nclub\",\n      \"language\": \"text\"\n    }\n  ]\n}\n[/block]\n[Email us](mailto:partners@domainr.com) your `zones.txt` URL, to set up your mapping.","category":"5542b4d1b7f4540d00fcee78","createdAt":"2015-05-21T00:45:32.470Z","excerpt":"","githubsync":"","hidden":false,"isReference":false,"link_external":false,"link_url":"","next":{"description":"","pages":[]},"order":999,"project":"553a8eeb861cb10d00e32915","slug":"registrars","sync_unique":"","title":"Registrars & Resellers","type":"basic","updates":[],"user":"553a8eb82af5f20d000fc30c","version":"5542b4d1b7f4540d00fcee77","childrenPages":[]}

Registrars & Resellers


The Domainr API provides instant autocomplete results for domain registrars and resellers. You can use it to supplement your search boxes with instant results, while preserving your existing search landing pages. ## Getting Started Using the Domainr API is simple and straightforward — a web developer can have it working in just a few minutes: 1) Add the [JavaScript code below](doc:javascript) to your site, and customize as needed. 2) Use a Mashape key, or `client_id` from us if your use will be high-volume/ 3) Send us your `zones.txt` file address; see below for details ## WHMCS If you use [WHMCS](http://www.whmcs.com/) for your reseller site, you can easily use the JavaScript-based Domainr Search Box to add autocomplete to your site. Just [follow the instructions below](doc:javascript). ## zones.txt — supported TLDs The Domainr API can be restricted to only return results with your supported top-level domains — we maintain an internal mapping of supported TLDs, keyed by registrars' domain names. To keep your listing current, publish a `zones.txt` file at the root of your website, listing your supported TLDs separated by newlines. Domainr will automatically ingest this file, and keep our internal mapping up to date. Here's an example `zones.txt` file: [https://uniregistry.com/zones.txt](https://uniregistry.com/zones.txt) [block:callout] { "type": "info", "title": "Note", "body": "The TLDs in your `zones.txt` file should be a strict subset of [the primary list at zonedb.org](https://github.com/zonedb/zonedb/blob/master/zones.txt).\n\nIf you don’t want to put the `zones.txt` file in the root directory of your website, you can link directly to the file in your homepage HTML:\n\n```html\n<link rel=\"zones\" type=\"text/plain\" href=\"/zones.txt\">\n```" } [/block] For example, if FooBarDomains' website is `foobardomains.com`, they would publish `foobardomains.com/zones.txt` with the following listing: [block:code] { "codes": [ { "code": "com\nnet\norg\ncafe\nphotos\ncamera\ncoffee\nclub", "language": "text" } ] } [/block] [Email us](mailto:partners@domainr.com) your `zones.txt` URL, to set up your mapping.
The Domainr API provides instant autocomplete results for domain registrars and resellers. You can use it to supplement your search boxes with instant results, while preserving your existing search landing pages. ## Getting Started Using the Domainr API is simple and straightforward — a web developer can have it working in just a few minutes: 1) Add the [JavaScript code below](doc:javascript) to your site, and customize as needed. 2) Use a Mashape key, or `client_id` from us if your use will be high-volume/ 3) Send us your `zones.txt` file address; see below for details ## WHMCS If you use [WHMCS](http://www.whmcs.com/) for your reseller site, you can easily use the JavaScript-based Domainr Search Box to add autocomplete to your site. Just [follow the instructions below](doc:javascript). ## zones.txt — supported TLDs The Domainr API can be restricted to only return results with your supported top-level domains — we maintain an internal mapping of supported TLDs, keyed by registrars' domain names. To keep your listing current, publish a `zones.txt` file at the root of your website, listing your supported TLDs separated by newlines. Domainr will automatically ingest this file, and keep our internal mapping up to date. Here's an example `zones.txt` file: [https://uniregistry.com/zones.txt](https://uniregistry.com/zones.txt) [block:callout] { "type": "info", "title": "Note", "body": "The TLDs in your `zones.txt` file should be a strict subset of [the primary list at zonedb.org](https://github.com/zonedb/zonedb/blob/master/zones.txt).\n\nIf you don’t want to put the `zones.txt` file in the root directory of your website, you can link directly to the file in your homepage HTML:\n\n```html\n<link rel=\"zones\" type=\"text/plain\" href=\"/zones.txt\">\n```" } [/block] For example, if FooBarDomains' website is `foobardomains.com`, they would publish `foobardomains.com/zones.txt` with the following listing: [block:code] { "codes": [ { "code": "com\nnet\norg\ncafe\nphotos\ncamera\ncoffee\nclub", "language": "text" } ] } [/block] [Email us](mailto:partners@domainr.com) your `zones.txt` URL, to set up your mapping.
{"__v":28,"_id":"557761f2a042551900b0033b","api":{"auth":"required","params":[],"results":{"codes":[{"status":200,"language":"json","code":"{}","name":""},{"status":400,"language":"json","code":"{}","name":""}]},"settings":"","url":""},"body":"You can easily add Domainr-powered instant autocomplete to your site, via JavaScript (and optionally jQuery). The JS code is available from [CDNJS](https://cdnjs.com/libraries/domainr-search-box), [NPM](https://www.npmjs.com/package/domainr-search-box), or [GitHub](https://github.com/domainr/domainr-search-box).\n\n1. Get an [API key from Mashape](https://www.mashape.com/domainr/domainr/), or a `client_id` (for high-volume commercial users).\n2. [Via CDNJS](https://cdnjs.com/libraries/domainr-search-box), include `domainr-search-box.min.js` and `domainr-search-box.css` in your page (or host these files yourself).\n3. Add an empty `div` underneath your `input` element; the Domainr Search Box will fill it with results.\n4. Configure the search box, customizing as needed.\n5. Style the results accordingly, via CSS.\n\n## Example:\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"<!DOCTYPE html>\\n<html>\\n  <head>\\n    <meta charset=\\\"utf-8\\\"/>\\n    <title>Simple Domainr Search Demo</title>\\n    <meta name=\\\"HandheldFriendly\\\" content=\\\"True\\\">\\n    <meta name=\\\"MobileOptimized\\\" content=\\\"320\\\">\\n    <meta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1\\\">\\n\\n    <!-- simple Domainr API CSS styling, via CDNJS -->\\n    <link rel=\\\"stylesheet\\\" type=\\\"text/css\\\" href=\\\"//cdnjs.cloudflare.com/ajax/libs/domainr-search-box/0.0.5/domainr-search-box.css\\\" />\\n    \\n    <!-- more style tweaks -->\\n    <style>\\n      body { text-align: center; }\\n      body, input { font-family: \\\"helvetica neue\\\", helvetica, sans-serif; font-size: 18px; }\\n      #example { position: relative; width: 320px; margin: 40px auto; text-align: left; }\\n      #example input { box-sizing: border-box; width: 100%; border: 1px solid #ccc; border-radius: 2px; padding: 3px 10px; appearance: none; }\\n      #example input:focus { outline: none; }\\n      #results { position: relative; width: 100%; }\\n    </style>\\n  </head>\\n\\n  <body>\\n    <div id=\\\"example\\\">\\n      <h1>Simple Domainr Search Demo</h1>\\n      \\n      <!-- search box input -->\\n      <input type=\\\"text\\\" id=\\\"search\\\" name=\\\"search\\\" placeholder=\\\"search all domains\\\" autocomplete=\\\"off\\\" autofocus autocapitalize=\\\"off\\\" autocorrect=\\\"off\\\">\\n      \\n      <!-- search results div, which will be populated -->\\n      <div id=\\\"results\\\"></div>\\n    </div>\\n    \\n    <!-- include the Domainr JS, via CDNJS -->\\n    <script src=\\\"//cdnjs.cloudflare.com/ajax/libs/domainr-search-box/0.0.5/domainr-search-box.min.js\\\"></script>\\n\\n    <!-- configure the search box -->\\n    <script>\\n      new domainr.SearchBox({\\n        mashapeKey: 'yourMashapeKey',\\n        // clientId: 'yourClientId', // or alternatively your clientId (for high-volume customers), in which case you don't need a Mashape key\\n        observe: document.getElementById('search'),\\n        renderTo: document.getElementById('results'),\\n        limit: 10, // limit to 10 results\\n        registrar: 'namecheap.com', // only return a registrar's supported TLDs\\n        defaults: [ 'coffee', 'rocks', 'co', 'io' ], // include these TLDs by default\\n        onSelect: function(result) {\\n          window.open('https://api.domainr.com/v2/register?registrar=namecheap.com&domain=' + result.domain);\\n        }\\n      });\\n    </script>\\n  </body>\\n</html>\\n\",\n      \"language\": \"html\"\n    }\n  ]\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"danger\",\n  \"body\": \"If you wish to keep your Mashape API key secret, you can proxy Domainr API requests through a server you control.\",\n  \"title\": \"Note about Mashape API key security\"\n}\n[/block]","category":"5542b4d1b7f4540d00fcee78","createdAt":"2015-06-09T22:00:18.786Z","excerpt":"","githubsync":"","hidden":false,"isReference":false,"link_external":false,"link_url":"","order":999,"project":"553a8eeb861cb10d00e32915","slug":"javascript","sync_unique":"","title":"JavaScript","type":"basic","updates":[],"user":"553a8eb82af5f20d000fc30c","version":"5542b4d1b7f4540d00fcee77","childrenPages":[]}

JavaScript


You can easily add Domainr-powered instant autocomplete to your site, via JavaScript (and optionally jQuery). The JS code is available from [CDNJS](https://cdnjs.com/libraries/domainr-search-box), [NPM](https://www.npmjs.com/package/domainr-search-box), or [GitHub](https://github.com/domainr/domainr-search-box). 1. Get an [API key from Mashape](https://www.mashape.com/domainr/domainr/), or a `client_id` (for high-volume commercial users). 2. [Via CDNJS](https://cdnjs.com/libraries/domainr-search-box), include `domainr-search-box.min.js` and `domainr-search-box.css` in your page (or host these files yourself). 3. Add an empty `div` underneath your `input` element; the Domainr Search Box will fill it with results. 4. Configure the search box, customizing as needed. 5. Style the results accordingly, via CSS. ## Example: [block:code] { "codes": [ { "code": "<!DOCTYPE html>\n<html>\n <head>\n <meta charset=\"utf-8\"/>\n <title>Simple Domainr Search Demo</title>\n <meta name=\"HandheldFriendly\" content=\"True\">\n <meta name=\"MobileOptimized\" content=\"320\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n\n <!-- simple Domainr API CSS styling, via CDNJS -->\n <link rel=\"stylesheet\" type=\"text/css\" href=\"//cdnjs.cloudflare.com/ajax/libs/domainr-search-box/0.0.5/domainr-search-box.css\" />\n \n <!-- more style tweaks -->\n <style>\n body { text-align: center; }\n body, input { font-family: \"helvetica neue\", helvetica, sans-serif; font-size: 18px; }\n #example { position: relative; width: 320px; margin: 40px auto; text-align: left; }\n #example input { box-sizing: border-box; width: 100%; border: 1px solid #ccc; border-radius: 2px; padding: 3px 10px; appearance: none; }\n #example input:focus { outline: none; }\n #results { position: relative; width: 100%; }\n </style>\n </head>\n\n <body>\n <div id=\"example\">\n <h1>Simple Domainr Search Demo</h1>\n \n <!-- search box input -->\n <input type=\"text\" id=\"search\" name=\"search\" placeholder=\"search all domains\" autocomplete=\"off\" autofocus autocapitalize=\"off\" autocorrect=\"off\">\n \n <!-- search results div, which will be populated -->\n <div id=\"results\"></div>\n </div>\n \n <!-- include the Domainr JS, via CDNJS -->\n <script src=\"//cdnjs.cloudflare.com/ajax/libs/domainr-search-box/0.0.5/domainr-search-box.min.js\"></script>\n\n <!-- configure the search box -->\n <script>\n new domainr.SearchBox({\n mashapeKey: 'yourMashapeKey',\n // clientId: 'yourClientId', // or alternatively your clientId (for high-volume customers), in which case you don't need a Mashape key\n observe: document.getElementById('search'),\n renderTo: document.getElementById('results'),\n limit: 10, // limit to 10 results\n registrar: 'namecheap.com', // only return a registrar's supported TLDs\n defaults: [ 'coffee', 'rocks', 'co', 'io' ], // include these TLDs by default\n onSelect: function(result) {\n window.open('https://api.domainr.com/v2/register?registrar=namecheap.com&domain=' + result.domain);\n }\n });\n </script>\n </body>\n</html>\n", "language": "html" } ] } [/block] [block:callout] { "type": "danger", "body": "If you wish to keep your Mashape API key secret, you can proxy Domainr API requests through a server you control.", "title": "Note about Mashape API key security" } [/block]
You can easily add Domainr-powered instant autocomplete to your site, via JavaScript (and optionally jQuery). The JS code is available from [CDNJS](https://cdnjs.com/libraries/domainr-search-box), [NPM](https://www.npmjs.com/package/domainr-search-box), or [GitHub](https://github.com/domainr/domainr-search-box). 1. Get an [API key from Mashape](https://www.mashape.com/domainr/domainr/), or a `client_id` (for high-volume commercial users). 2. [Via CDNJS](https://cdnjs.com/libraries/domainr-search-box), include `domainr-search-box.min.js` and `domainr-search-box.css` in your page (or host these files yourself). 3. Add an empty `div` underneath your `input` element; the Domainr Search Box will fill it with results. 4. Configure the search box, customizing as needed. 5. Style the results accordingly, via CSS. ## Example: [block:code] { "codes": [ { "code": "<!DOCTYPE html>\n<html>\n <head>\n <meta charset=\"utf-8\"/>\n <title>Simple Domainr Search Demo</title>\n <meta name=\"HandheldFriendly\" content=\"True\">\n <meta name=\"MobileOptimized\" content=\"320\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n\n <!-- simple Domainr API CSS styling, via CDNJS -->\n <link rel=\"stylesheet\" type=\"text/css\" href=\"//cdnjs.cloudflare.com/ajax/libs/domainr-search-box/0.0.5/domainr-search-box.css\" />\n \n <!-- more style tweaks -->\n <style>\n body { text-align: center; }\n body, input { font-family: \"helvetica neue\", helvetica, sans-serif; font-size: 18px; }\n #example { position: relative; width: 320px; margin: 40px auto; text-align: left; }\n #example input { box-sizing: border-box; width: 100%; border: 1px solid #ccc; border-radius: 2px; padding: 3px 10px; appearance: none; }\n #example input:focus { outline: none; }\n #results { position: relative; width: 100%; }\n </style>\n </head>\n\n <body>\n <div id=\"example\">\n <h1>Simple Domainr Search Demo</h1>\n \n <!-- search box input -->\n <input type=\"text\" id=\"search\" name=\"search\" placeholder=\"search all domains\" autocomplete=\"off\" autofocus autocapitalize=\"off\" autocorrect=\"off\">\n \n <!-- search results div, which will be populated -->\n <div id=\"results\"></div>\n </div>\n \n <!-- include the Domainr JS, via CDNJS -->\n <script src=\"//cdnjs.cloudflare.com/ajax/libs/domainr-search-box/0.0.5/domainr-search-box.min.js\"></script>\n\n <!-- configure the search box -->\n <script>\n new domainr.SearchBox({\n mashapeKey: 'yourMashapeKey',\n // clientId: 'yourClientId', // or alternatively your clientId (for high-volume customers), in which case you don't need a Mashape key\n observe: document.getElementById('search'),\n renderTo: document.getElementById('results'),\n limit: 10, // limit to 10 results\n registrar: 'namecheap.com', // only return a registrar's supported TLDs\n defaults: [ 'coffee', 'rocks', 'co', 'io' ], // include these TLDs by default\n onSelect: function(result) {\n window.open('https://api.domainr.com/v2/register?registrar=namecheap.com&domain=' + result.domain);\n }\n });\n </script>\n </body>\n</html>\n", "language": "html" } ] } [/block] [block:callout] { "type": "danger", "body": "If you wish to keep your Mashape API key secret, you can proxy Domainr API requests through a server you control.", "title": "Note about Mashape API key security" } [/block]
{"__v":7,"_id":"5542b4d2b7f4540d00fcee80","api":{"auth":"required","params":[],"results":{"codes":[{"status":200,"language":"json","code":"{}","name":""},{"status":400,"language":"json","code":"{}","name":""}]},"settings":"","url":""},"body":"The `search` command performs a real-time query of the search term(s) against the known zone database, making recommendations, stemming, Unicode folding, IDN normalization, and other refinements.\n\nThe server responds with a JSON object.\n\n## Arguments\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Parameter\",\n    \"h-1\": \"Description\",\n    \"h-2\": \"Example\",\n    \"0-0\": \"`query`\",\n    \"0-1\": \"Term(s) to search against (required).\",\n    \"0-2\": \"`query=acme%20cafe`\",\n    \"1-0\": \"`location`\",\n    \"1-1\": \"Optionally override the IP location detection for country-code zones, with a two-character country code.\",\n    \"2-0\": \"`registrar`\",\n    \"2-1\": \"The *domain name* of a specific registrar to filter results by that registrar’s supported list of extensions (optional).\",\n    \"1-2\": \"`location=de`\",\n    \"2-2\": \"`registrar=namecheap.com`\",\n    \"3-0\": \"`defaults`\",\n    \"3-1\": \"Optional comma-separated list of default zones to include in the response.\",\n    \"3-2\": \"`defaults=bike,cab`\",\n    \"4-0\": \"`keywords` (beta)\",\n    \"4-1\": \"Beta feature: optional comma-separated list of keywords to seed the results.\",\n    \"4-2\": \"`keywords=coffee,food`\"\n  },\n  \"cols\": 3,\n  \"rows\": 5\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Search request\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"/v2/search?query=acme%20cafe\",\n      \"language\": \"http\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Search response\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"results\\\": [\\n    {\\n      \\\"domain\\\": \\\"acme.cafe\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acme.\\\",\\n      \\\"zone\\\": \\\"cafe\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acme.cafe&registrar=&source=api\\\"\\n    },\\n    {\\n      \\\"domain\\\": \\\"acme.coffee\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acme.\\\",\\n      \\\"zone\\\": \\\"coffee\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acme.coffee&registrar=&source=api\\\"\\n    },\\n    {\\n      \\\"domain\\\": \\\"acme.kitchen\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acme.\\\",\\n      \\\"zone\\\": \\\"kitchen\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acme.kitchen&registrar=&source=api\\\"\\n    },\\n    {\\n      \\\"domain\\\": \\\"acme.restaurant\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acme.\\\",\\n      \\\"zone\\\": \\\"restaurant\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acme.restaurant&registrar=&source=api\\\"\\n    },\\n    {\\n      \\\"domain\\\": \\\"acmecafe.us\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acmecafe.\\\",\\n      \\\"zone\\\": \\\"us\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acmecafe.us&registrar=&source=api\\\"\\n    },\\n    {\\n      \\\"domain\\\": \\\"acmecafe.com\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acmecafe.\\\",\\n      \\\"zone\\\": \\\"com\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acmecafe.com&registrar=&source=api\\\"\\n    },\\n    {\\n      \\\"domain\\\": \\\"acmecafe.net\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acmecafe.\\\",\\n      \\\"zone\\\": \\\"net\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acmecafe.net&registrar=&source=api\\\"\\n    },\\n    {\\n      \\\"domain\\\": \\\"acmecafe.org\\\",\\n      \\\"host\\\": \\\"\\\",\\n      \\\"subdomain\\\": \\\"acmecafe.\\\",\\n      \\\"zone\\\": \\\"org\\\",\\n      \\\"path\\\": \\\"\\\",\\n      \\\"registerURL\\\": \\\"https://api.domainr.com/v2/register?domain=acmecafe.org&registrar=&source=api\\\"\\n    }\\n  ]\\n}\",\n      \"language\": \"json\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n## Errors\n\nIn the event of an error, the response will include `\"message\"` key describing the error.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"query\\\": \\\"\\\",\\n  \\\"results\\\": [],\\n  \\\"error\\\": {\\n    \\\"status\\\": 404,\\n    \\\"message\\\": \\\"No results found.\\\"\\n  }\\n}\",\n      \"language\": \"json\"\n    }\n  ]\n}\n[/block]","category":"5542b4d1b7f4540d00fcee7a","createdAt":"2015-04-29T22:22:38.761Z","excerpt":"","githubsync":"","hidden":false,"isReference":false,"link_external":false,"link_url":"","next":{"description":"","pages":[]},"order":0,"project":"553a8eeb861cb10d00e32915","slug":"search","sync_unique":"","title":"Search","type":"basic","updates":[],"user":"553a8eb82af5f20d000fc30c","version":"5542b4d1b7f4540d00fcee77","childrenPages":[]}

Search


The `search` command performs a real-time query of the search term(s) against the known zone database, making recommendations, stemming, Unicode folding, IDN normalization, and other refinements. The server responds with a JSON object. ## Arguments [block:parameters] { "data": { "h-0": "Parameter", "h-1": "Description", "h-2": "Example", "0-0": "`query`", "0-1": "Term(s) to search against (required).", "0-2": "`query=acme%20cafe`", "1-0": "`location`", "1-1": "Optionally override the IP location detection for country-code zones, with a two-character country code.", "2-0": "`registrar`", "2-1": "The *domain name* of a specific registrar to filter results by that registrar’s supported list of extensions (optional).", "1-2": "`location=de`", "2-2": "`registrar=namecheap.com`", "3-0": "`defaults`", "3-1": "Optional comma-separated list of default zones to include in the response.", "3-2": "`defaults=bike,cab`", "4-0": "`keywords` (beta)", "4-1": "Beta feature: optional comma-separated list of keywords to seed the results.", "4-2": "`keywords=coffee,food`" }, "cols": 3, "rows": 5 } [/block] [block:api-header] { "type": "basic", "title": "Search request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?query=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "Search response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "{\n \"results\": [\n {\n \"domain\": \"acme.cafe\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"cafe\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.cafe&registrar=&source=api\"\n },\n {\n \"domain\": \"acme.coffee\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"coffee\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.coffee&registrar=&source=api\"\n },\n {\n \"domain\": \"acme.kitchen\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"kitchen\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.kitchen&registrar=&source=api\"\n },\n {\n \"domain\": \"acme.restaurant\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"restaurant\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.restaurant&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.us\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"us\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.us&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.com\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"com\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.com&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.net\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"net\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.net&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.org\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"org\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.org&registrar=&source=api\"\n }\n ]\n}", "language": "json" } ], "sidebar": true } [/block] ## Errors In the event of an error, the response will include `"message"` key describing the error. [block:code] { "codes": [ { "code": "{\n \"query\": \"\",\n \"results\": [],\n \"error\": {\n \"status\": 404,\n \"message\": \"No results found.\"\n }\n}", "language": "json" } ] } [/block]
The `search` command performs a real-time query of the search term(s) against the known zone database, making recommendations, stemming, Unicode folding, IDN normalization, and other refinements. The server responds with a JSON object. ## Arguments [block:parameters] { "data": { "h-0": "Parameter", "h-1": "Description", "h-2": "Example", "0-0": "`query`", "0-1": "Term(s) to search against (required).", "0-2": "`query=acme%20cafe`", "1-0": "`location`", "1-1": "Optionally override the IP location detection for country-code zones, with a two-character country code.", "2-0": "`registrar`", "2-1": "The *domain name* of a specific registrar to filter results by that registrar’s supported list of extensions (optional).", "1-2": "`location=de`", "2-2": "`registrar=namecheap.com`", "3-0": "`defaults`", "3-1": "Optional comma-separated list of default zones to include in the response.", "3-2": "`defaults=bike,cab`", "4-0": "`keywords` (beta)", "4-1": "Beta feature: optional comma-separated list of keywords to seed the results.", "4-2": "`keywords=coffee,food`" }, "cols": 3, "rows": 5 } [/block] [block:api-header] { "type": "basic", "title": "Search request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/search?query=acme%20cafe", "language": "http" } ], "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "Search response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "{\n \"results\": [\n {\n \"domain\": \"acme.cafe\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"cafe\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.cafe&registrar=&source=api\"\n },\n {\n \"domain\": \"acme.coffee\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"coffee\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.coffee&registrar=&source=api\"\n },\n {\n \"domain\": \"acme.kitchen\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"kitchen\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.kitchen&registrar=&source=api\"\n },\n {\n \"domain\": \"acme.restaurant\",\n \"host\": \"\",\n \"subdomain\": \"acme.\",\n \"zone\": \"restaurant\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acme.restaurant&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.us\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"us\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.us&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.com\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"com\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.com&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.net\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"net\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.net&registrar=&source=api\"\n },\n {\n \"domain\": \"acmecafe.org\",\n \"host\": \"\",\n \"subdomain\": \"acmecafe.\",\n \"zone\": \"org\",\n \"path\": \"\",\n \"registerURL\": \"https://api.domainr.com/v2/register?domain=acmecafe.org&registrar=&source=api\"\n }\n ]\n}", "language": "json" } ], "sidebar": true } [/block] ## Errors In the event of an error, the response will include `"message"` key describing the error. [block:code] { "codes": [ { "code": "{\n \"query\": \"\",\n \"results\": [],\n \"error\": {\n \"status\": 404,\n \"message\": \"No results found.\"\n }\n}", "language": "json" } ] } [/block]
{"__v":30,"_id":"5542b4d2b7f4540d00fcee81","api":{"auth":"required","params":[],"results":{"codes":[{"status":200,"language":"json","code":"{}","name":""},{"status":400,"language":"json","code":"{}","name":""}]},"settings":"","url":""},"body":"The `status` command checks the availability status of a domain name. It accepts a single argument: `domain`. \n\nThe response will contain a JSON array of `status` objects with three keys: `domain`, `status`, and `summary`. The `status` key is a space-delimited list of status types for the given domain, in increasing order of precedence. The `summary` key will always contain the last value in the `status` key.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Domain Availability\",\n  \"body\": \"To determine the availability status of a domain, use the appropriate value(s) in the `status` response.\\n\\nFor example, `inactive` means a domain is available for registration, and `inactive premium` means the domain is a premium.\\n\\nNote: the `summary` key is a developer-centric hint, not the final availability status.\"\n}\n[/block]\nIf you see `unknown` for a given domain, this means the Domainr API was unable to determine an authoritative status from its upstream sources. This is commonly due to a domain backend operator performing system maintenance.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Registry Maintenance\",\n  \"body\": \"Each top-level domain is operated by a [Registry Operator](http://icannwiki.com/Registry), which regularly (usually monthly) performs maintenance on its backend systems. For example, [Afilias](https://ntldstats.com/backend/Afilias-Limited) powers `.me` and a many other TLDs, [Neustar](https://ntldstats.com/backend/Neustar-Inc) powers `.club` and many other TLDs, etc. \\n\\n_[nTLDStats](https://ntldstats.com/backend) is a great resource for learning more about which Registry and Backends power specific TLDs._\\n\\nDuring maintenance windows (or unscheduled outages), the Domainr API will respond with `unknown` for TLDs affected by the maintenance. e.g. if [Uniregistry](http://uniregistry.link/) is doing maintenance, [these TLDs](https://ntldstats.com/backend/Uniregistry-Inc) would likely be affected.\\n\\nThe folks at OpenSRS [have a great systems status page](http://opensrsstatus.com/) that tracks all the registry maintenance windows, so have a look there to confirm what you’re seeing.\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"danger\",\n  \"title\": \"Request Timeouts\",\n  \"body\": \"To prevent resource exhaustion, our platform limits API requests to a total runtime of 30 seconds. If an upstream provider fails to respond within this limit, requests to the `status` API will return a best-effort value, typically `unknown` or `undelegated`.\"\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Status request\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"/v2/status?domain=acme.coffee,acmecafe.com,acmecafe.net,acmecafe.co,acmecafe.io\",\n      \"language\": \"http\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n## Arguments\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Parameter\",\n    \"h-1\": \"Description\",\n    \"0-0\": \"`domain`\",\n    \"1-0\": \"`client_id`\",\n    \"0-1\": \"Your search query (required).\",\n    \"1-1\": \"Your API key (client ID).\",\n    \"h-2\": \"Example\",\n    \"0-2\": \"`domain=acmecoffee.com`\"\n  },\n  \"cols\": 3,\n  \"rows\": 1\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Optimizations for Enterprise API Customers\",\n  \"body\": \"If your implementation requires that `status` responses be as fast as possible (e.g. in a mobile app UX for end users), batch the domains in each `status` request by their registry backend. ([nTLDStats](https://ntldstats.com/backend) has a handy mapping of which TLDs use which backends, for the new gTLDs.)\\n\\nFor example:\\n\\n- Verisign for `.com` and `.net`\\n- [Afilias](https://ntldstats.com/backend/Afilias-Limited)\\n- [Uniregistry](https://ntldstats.com/backend/Uniregistry-Inc)\\n- [Nominet](https://ntldstats.com/backend/Nominet)\\n- etc.\\n\\nBatching by registry ensures that your `status` responses will be returned as soon as the upstream registry backend responds.\\n\\nIf you don't batch, `status` responses will not be returned to your client until all the upstream registry backends have responded to their checks, gated by the slowest to respond.\"\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Status response\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"status\\\": [\\n    {\\n      \\\"domain\\\": \\\"acmecoffee.com\\\",\\n      \\\"zone\\\": \\\"coffee\\\",\\n      \\\"status\\\": \\\"undelegated inactive\\\",\\n      \\\"summary\\\": \\\"inactive\\\"\\n    }\\n  ]\\n}\",\n      \"language\": \"json\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n## Domain Status\n\nDomainr returns status as a space-separated list of status flags, in increasing order of priority.\n\nThe last (right-most) status can be considered the overall or summary status. e.g. the status for **.com** is `claimed active suffix zone tld`, meaning it is claimed, in active use (registered), a known public suffix, a zone in our database, and a TLD (summarized as `tld`).\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Premium Domains\",\n  \"body\": \"Some of the new top-level domain registries sell a subset of their domains as “premium,” with special pricing. The Status API will mark these as status `premium`, but not all registrars and resellers support them.\\n\\nIf your backend does not support these new premium domains, you can mark `premium` domains as unavailable in your UI. `inactive` domains however, can be considered available, as they are not premiums.\"\n}\n[/block]\n\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Status\",\n    \"h-1\": \"Example\",\n    \"h-2\": \"Description\",\n    \"0-0\": \"`unknown`\",\n    \"1-0\": \"`undelegated`\",\n    \"2-0\": \"`inactive`\",\n    \"3-0\": \"`pending`\",\n    \"4-0\": \"`unregistrable`\",\n    \"5-0\": \"`disallowed`\",\n    \"6-0\": \"`claimed`\",\n    \"7-0\": \"`reserved`\",\n    \"8-0\": \"`dpml`\",\n    \"9-0\": \"`invalid`\",\n    \"10-0\": \"`active`\",\n    \"11-0\": \"`parked`\",\n    \"12-0\": \"`marketed`\",\n    \"17-0\": \"`premium`\",\n    \"18-0\": \"`suffix`\",\n    \"19-0\": \"`registrar`\",\n    \"20-0\": \"`zone`\",\n    \"21-0\": \"`tld`\",\n    \"1-1\": \"hello.edu\",\n    \"2-1\": \"nonexistent.xyz\",\n    \"3-1\": \"morning.cafe\",\n    \"4-1\": \"hello.google\",\n    \"5-1\": \"re.coffee\",\n    \"6-1\": \"brand.co\",\n    \"7-1\": \"google.bargains\",\n    \"8-1\": \"google.bargains\",\n    \"9-1\": \"A domain with > 64 chars.\",\n    \"10-1\": \"ace.coffee\",\n    \"11-1\": \"01.net\",\n    \"12-1\": \"la.co\",\n    \"17-1\": \"ace.pizza\",\n    \"18-1\": \"blogspot.com\",\n    \"19-1\": \"dnsimple.com\",\n    \"20-1\": \"co.uk\",\n    \"21-1\": \"com\",\n    \"0-2\": \"Unknown status, usually resulting from an error or misconfiguration.\",\n    \"1-2\": \"The domain is not present in [DNS](http://en.wikipedia.org/wiki/Domain_Name_System).\",\n    \"2-2\": \"Available for new registration.\",\n    \"3-2\": \"TLD not yet in the root zone file.\",\n    \"4-2\": \"No registrars offer this domain for sale.\",\n    \"5-2\": \"Disallowed by the registry, ICANN, or other (wrong script, etc.).\",\n    \"6-2\": \"Claimed or reserved by some party (not available for new registration).\",\n    \"7-2\": \"Explicitly reserved by ICANN, the registry, or another party\",\n    \"8-2\": \"[Domains Protected Marks List](http://www.donuts.co/dpml/), reserved for trademark holders.\",\n    \"9-2\": \"Technically invalid, e.g. too long or too short.\",\n    \"10-2\": \"Registered, but possibly available via the aftermarket.\",\n    \"11-2\": \"Active and parked.\",\n    \"12-2\": \"Explicitly marketed as for sale.\",\n    \"17-2\": \"Premium domain name for sale by the registry.\",\n    \"18-2\": \"A public suffix according to [publicsuffix.org](http://publicsuffix.org).\",\n    \"19-2\": \"A domain controlled by a registrar.\",\n    \"20-2\": \"A zone (domain extension) in the Domainr database.\",\n    \"21-2\": \"Top-level domain.\",\n    \"13-0\": \"`expiring`\",\n    \"13-1\": \"An expiring domain.\",\n    \"13-2\": \"E.g. from the SnapNames inventory.\",\n    \"14-0\": \"`deleting`\",\n    \"14-1\": \"A deleting domain.\",\n    \"14-2\": \"E.g. from the SnapNames inventory.\",\n    \"15-0\": \"`priced`\",\n    \"15-1\": \"An aftermarket domain with an explicit price.\",\n    \"15-2\": \"E.g. from the BuyDomains inventory.\",\n    \"16-0\": \"`transferable`\",\n    \"16-1\": \"An aftermarket domain available for fast-transfer.\",\n    \"16-2\": \"E.g. from the Afternic inventory.\"\n  },\n  \"cols\": 3,\n  \"rows\": 22\n}\n[/block]","category":"5542b4d1b7f4540d00fcee7a","createdAt":"2015-04-29T22:24:52.532Z","excerpt":"","githubsync":"","hidden":false,"isReference":false,"link_external":false,"link_url":"","next":{"description":"","pages":[]},"order":1,"project":"553a8eeb861cb10d00e32915","slug":"status","sync_unique":"","title":"Status","type":"basic","updates":[],"user":"553a8eb82af5f20d000fc30c","version":"5542b4d1b7f4540d00fcee77","childrenPages":[]}

Status


The `status` command checks the availability status of a domain name. It accepts a single argument: `domain`. The response will contain a JSON array of `status` objects with three keys: `domain`, `status`, and `summary`. The `status` key is a space-delimited list of status types for the given domain, in increasing order of precedence. The `summary` key will always contain the last value in the `status` key. [block:callout] { "type": "info", "title": "Domain Availability", "body": "To determine the availability status of a domain, use the appropriate value(s) in the `status` response.\n\nFor example, `inactive` means a domain is available for registration, and `inactive premium` means the domain is a premium.\n\nNote: the `summary` key is a developer-centric hint, not the final availability status." } [/block] If you see `unknown` for a given domain, this means the Domainr API was unable to determine an authoritative status from its upstream sources. This is commonly due to a domain backend operator performing system maintenance. [block:callout] { "type": "info", "title": "Registry Maintenance", "body": "Each top-level domain is operated by a [Registry Operator](http://icannwiki.com/Registry), which regularly (usually monthly) performs maintenance on its backend systems. For example, [Afilias](https://ntldstats.com/backend/Afilias-Limited) powers `.me` and a many other TLDs, [Neustar](https://ntldstats.com/backend/Neustar-Inc) powers `.club` and many other TLDs, etc. \n\n_[nTLDStats](https://ntldstats.com/backend) is a great resource for learning more about which Registry and Backends power specific TLDs._\n\nDuring maintenance windows (or unscheduled outages), the Domainr API will respond with `unknown` for TLDs affected by the maintenance. e.g. if [Uniregistry](http://uniregistry.link/) is doing maintenance, [these TLDs](https://ntldstats.com/backend/Uniregistry-Inc) would likely be affected.\n\nThe folks at OpenSRS [have a great systems status page](http://opensrsstatus.com/) that tracks all the registry maintenance windows, so have a look there to confirm what you’re seeing." } [/block] [block:callout] { "type": "danger", "title": "Request Timeouts", "body": "To prevent resource exhaustion, our platform limits API requests to a total runtime of 30 seconds. If an upstream provider fails to respond within this limit, requests to the `status` API will return a best-effort value, typically `unknown` or `undelegated`." } [/block] [block:api-header] { "type": "basic", "title": "Status request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/status?domain=acme.coffee,acmecafe.com,acmecafe.net,acmecafe.co,acmecafe.io", "language": "http" } ], "sidebar": true } [/block] ## Arguments [block:parameters] { "data": { "h-0": "Parameter", "h-1": "Description", "0-0": "`domain`", "1-0": "`client_id`", "0-1": "Your search query (required).", "1-1": "Your API key (client ID).", "h-2": "Example", "0-2": "`domain=acmecoffee.com`" }, "cols": 3, "rows": 1 } [/block] [block:callout] { "type": "info", "title": "Optimizations for Enterprise API Customers", "body": "If your implementation requires that `status` responses be as fast as possible (e.g. in a mobile app UX for end users), batch the domains in each `status` request by their registry backend. ([nTLDStats](https://ntldstats.com/backend) has a handy mapping of which TLDs use which backends, for the new gTLDs.)\n\nFor example:\n\n- Verisign for `.com` and `.net`\n- [Afilias](https://ntldstats.com/backend/Afilias-Limited)\n- [Uniregistry](https://ntldstats.com/backend/Uniregistry-Inc)\n- [Nominet](https://ntldstats.com/backend/Nominet)\n- etc.\n\nBatching by registry ensures that your `status` responses will be returned as soon as the upstream registry backend responds.\n\nIf you don't batch, `status` responses will not be returned to your client until all the upstream registry backends have responded to their checks, gated by the slowest to respond." } [/block] [block:api-header] { "type": "basic", "title": "Status response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "{\n \"status\": [\n {\n \"domain\": \"acmecoffee.com\",\n \"zone\": \"coffee\",\n \"status\": \"undelegated inactive\",\n \"summary\": \"inactive\"\n }\n ]\n}", "language": "json" } ], "sidebar": true } [/block] ## Domain Status Domainr returns status as a space-separated list of status flags, in increasing order of priority. The last (right-most) status can be considered the overall or summary status. e.g. the status for **.com** is `claimed active suffix zone tld`, meaning it is claimed, in active use (registered), a known public suffix, a zone in our database, and a TLD (summarized as `tld`). [block:callout] { "type": "info", "title": "Premium Domains", "body": "Some of the new top-level domain registries sell a subset of their domains as “premium,” with special pricing. The Status API will mark these as status `premium`, but not all registrars and resellers support them.\n\nIf your backend does not support these new premium domains, you can mark `premium` domains as unavailable in your UI. `inactive` domains however, can be considered available, as they are not premiums." } [/block] [block:parameters] { "data": { "h-0": "Status", "h-1": "Example", "h-2": "Description", "0-0": "`unknown`", "1-0": "`undelegated`", "2-0": "`inactive`", "3-0": "`pending`", "4-0": "`unregistrable`", "5-0": "`disallowed`", "6-0": "`claimed`", "7-0": "`reserved`", "8-0": "`dpml`", "9-0": "`invalid`", "10-0": "`active`", "11-0": "`parked`", "12-0": "`marketed`", "17-0": "`premium`", "18-0": "`suffix`", "19-0": "`registrar`", "20-0": "`zone`", "21-0": "`tld`", "1-1": "hello.edu", "2-1": "nonexistent.xyz", "3-1": "morning.cafe", "4-1": "hello.google", "5-1": "re.coffee", "6-1": "brand.co", "7-1": "google.bargains", "8-1": "google.bargains", "9-1": "A domain with > 64 chars.", "10-1": "ace.coffee", "11-1": "01.net", "12-1": "la.co", "17-1": "ace.pizza", "18-1": "blogspot.com", "19-1": "dnsimple.com", "20-1": "co.uk", "21-1": "com", "0-2": "Unknown status, usually resulting from an error or misconfiguration.", "1-2": "The domain is not present in [DNS](http://en.wikipedia.org/wiki/Domain_Name_System).", "2-2": "Available for new registration.", "3-2": "TLD not yet in the root zone file.", "4-2": "No registrars offer this domain for sale.", "5-2": "Disallowed by the registry, ICANN, or other (wrong script, etc.).", "6-2": "Claimed or reserved by some party (not available for new registration).", "7-2": "Explicitly reserved by ICANN, the registry, or another party", "8-2": "[Domains Protected Marks List](http://www.donuts.co/dpml/), reserved for trademark holders.", "9-2": "Technically invalid, e.g. too long or too short.", "10-2": "Registered, but possibly available via the aftermarket.", "11-2": "Active and parked.", "12-2": "Explicitly marketed as for sale.", "17-2": "Premium domain name for sale by the registry.", "18-2": "A public suffix according to [publicsuffix.org](http://publicsuffix.org).", "19-2": "A domain controlled by a registrar.", "20-2": "A zone (domain extension) in the Domainr database.", "21-2": "Top-level domain.", "13-0": "`expiring`", "13-1": "An expiring domain.", "13-2": "E.g. from the SnapNames inventory.", "14-0": "`deleting`", "14-1": "A deleting domain.", "14-2": "E.g. from the SnapNames inventory.", "15-0": "`priced`", "15-1": "An aftermarket domain with an explicit price.", "15-2": "E.g. from the BuyDomains inventory.", "16-0": "`transferable`", "16-1": "An aftermarket domain available for fast-transfer.", "16-2": "E.g. from the Afternic inventory." }, "cols": 3, "rows": 22 } [/block]
The `status` command checks the availability status of a domain name. It accepts a single argument: `domain`. The response will contain a JSON array of `status` objects with three keys: `domain`, `status`, and `summary`. The `status` key is a space-delimited list of status types for the given domain, in increasing order of precedence. The `summary` key will always contain the last value in the `status` key. [block:callout] { "type": "info", "title": "Domain Availability", "body": "To determine the availability status of a domain, use the appropriate value(s) in the `status` response.\n\nFor example, `inactive` means a domain is available for registration, and `inactive premium` means the domain is a premium.\n\nNote: the `summary` key is a developer-centric hint, not the final availability status." } [/block] If you see `unknown` for a given domain, this means the Domainr API was unable to determine an authoritative status from its upstream sources. This is commonly due to a domain backend operator performing system maintenance. [block:callout] { "type": "info", "title": "Registry Maintenance", "body": "Each top-level domain is operated by a [Registry Operator](http://icannwiki.com/Registry), which regularly (usually monthly) performs maintenance on its backend systems. For example, [Afilias](https://ntldstats.com/backend/Afilias-Limited) powers `.me` and a many other TLDs, [Neustar](https://ntldstats.com/backend/Neustar-Inc) powers `.club` and many other TLDs, etc. \n\n_[nTLDStats](https://ntldstats.com/backend) is a great resource for learning more about which Registry and Backends power specific TLDs._\n\nDuring maintenance windows (or unscheduled outages), the Domainr API will respond with `unknown` for TLDs affected by the maintenance. e.g. if [Uniregistry](http://uniregistry.link/) is doing maintenance, [these TLDs](https://ntldstats.com/backend/Uniregistry-Inc) would likely be affected.\n\nThe folks at OpenSRS [have a great systems status page](http://opensrsstatus.com/) that tracks all the registry maintenance windows, so have a look there to confirm what you’re seeing." } [/block] [block:callout] { "type": "danger", "title": "Request Timeouts", "body": "To prevent resource exhaustion, our platform limits API requests to a total runtime of 30 seconds. If an upstream provider fails to respond within this limit, requests to the `status` API will return a best-effort value, typically `unknown` or `undelegated`." } [/block] [block:api-header] { "type": "basic", "title": "Status request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/status?domain=acme.coffee,acmecafe.com,acmecafe.net,acmecafe.co,acmecafe.io", "language": "http" } ], "sidebar": true } [/block] ## Arguments [block:parameters] { "data": { "h-0": "Parameter", "h-1": "Description", "0-0": "`domain`", "1-0": "`client_id`", "0-1": "Your search query (required).", "1-1": "Your API key (client ID).", "h-2": "Example", "0-2": "`domain=acmecoffee.com`" }, "cols": 3, "rows": 1 } [/block] [block:callout] { "type": "info", "title": "Optimizations for Enterprise API Customers", "body": "If your implementation requires that `status` responses be as fast as possible (e.g. in a mobile app UX for end users), batch the domains in each `status` request by their registry backend. ([nTLDStats](https://ntldstats.com/backend) has a handy mapping of which TLDs use which backends, for the new gTLDs.)\n\nFor example:\n\n- Verisign for `.com` and `.net`\n- [Afilias](https://ntldstats.com/backend/Afilias-Limited)\n- [Uniregistry](https://ntldstats.com/backend/Uniregistry-Inc)\n- [Nominet](https://ntldstats.com/backend/Nominet)\n- etc.\n\nBatching by registry ensures that your `status` responses will be returned as soon as the upstream registry backend responds.\n\nIf you don't batch, `status` responses will not be returned to your client until all the upstream registry backends have responded to their checks, gated by the slowest to respond." } [/block] [block:api-header] { "type": "basic", "title": "Status response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "{\n \"status\": [\n {\n \"domain\": \"acmecoffee.com\",\n \"zone\": \"coffee\",\n \"status\": \"undelegated inactive\",\n \"summary\": \"inactive\"\n }\n ]\n}", "language": "json" } ], "sidebar": true } [/block] ## Domain Status Domainr returns status as a space-separated list of status flags, in increasing order of priority. The last (right-most) status can be considered the overall or summary status. e.g. the status for **.com** is `claimed active suffix zone tld`, meaning it is claimed, in active use (registered), a known public suffix, a zone in our database, and a TLD (summarized as `tld`). [block:callout] { "type": "info", "title": "Premium Domains", "body": "Some of the new top-level domain registries sell a subset of their domains as “premium,” with special pricing. The Status API will mark these as status `premium`, but not all registrars and resellers support them.\n\nIf your backend does not support these new premium domains, you can mark `premium` domains as unavailable in your UI. `inactive` domains however, can be considered available, as they are not premiums." } [/block] [block:parameters] { "data": { "h-0": "Status", "h-1": "Example", "h-2": "Description", "0-0": "`unknown`", "1-0": "`undelegated`", "2-0": "`inactive`", "3-0": "`pending`", "4-0": "`unregistrable`", "5-0": "`disallowed`", "6-0": "`claimed`", "7-0": "`reserved`", "8-0": "`dpml`", "9-0": "`invalid`", "10-0": "`active`", "11-0": "`parked`", "12-0": "`marketed`", "17-0": "`premium`", "18-0": "`suffix`", "19-0": "`registrar`", "20-0": "`zone`", "21-0": "`tld`", "1-1": "hello.edu", "2-1": "nonexistent.xyz", "3-1": "morning.cafe", "4-1": "hello.google", "5-1": "re.coffee", "6-1": "brand.co", "7-1": "google.bargains", "8-1": "google.bargains", "9-1": "A domain with > 64 chars.", "10-1": "ace.coffee", "11-1": "01.net", "12-1": "la.co", "17-1": "ace.pizza", "18-1": "blogspot.com", "19-1": "dnsimple.com", "20-1": "co.uk", "21-1": "com", "0-2": "Unknown status, usually resulting from an error or misconfiguration.", "1-2": "The domain is not present in [DNS](http://en.wikipedia.org/wiki/Domain_Name_System).", "2-2": "Available for new registration.", "3-2": "TLD not yet in the root zone file.", "4-2": "No registrars offer this domain for sale.", "5-2": "Disallowed by the registry, ICANN, or other (wrong script, etc.).", "6-2": "Claimed or reserved by some party (not available for new registration).", "7-2": "Explicitly reserved by ICANN, the registry, or another party", "8-2": "[Domains Protected Marks List](http://www.donuts.co/dpml/), reserved for trademark holders.", "9-2": "Technically invalid, e.g. too long or too short.", "10-2": "Registered, but possibly available via the aftermarket.", "11-2": "Active and parked.", "12-2": "Explicitly marketed as for sale.", "17-2": "Premium domain name for sale by the registry.", "18-2": "A public suffix according to [publicsuffix.org](http://publicsuffix.org).", "19-2": "A domain controlled by a registrar.", "20-2": "A zone (domain extension) in the Domainr database.", "21-2": "Top-level domain.", "13-0": "`expiring`", "13-1": "An expiring domain.", "13-2": "E.g. from the SnapNames inventory.", "14-0": "`deleting`", "14-1": "A deleting domain.", "14-2": "E.g. from the SnapNames inventory.", "15-0": "`priced`", "15-1": "An aftermarket domain with an explicit price.", "15-2": "E.g. from the BuyDomains inventory.", "16-0": "`transferable`", "16-1": "An aftermarket domain available for fast-transfer.", "16-2": "E.g. from the Afternic inventory." }, "cols": 3, "rows": 22 } [/block]
{"__v":3,"_id":"5542b4d2b7f4540d00fcee7e","api":{"auth":"required","params":[],"results":{"codes":[{"status":200,"language":"json","code":"{}","name":""},{"status":400,"language":"json","code":"{}","name":""}]},"url":""},"body":"The Register API takes a domain parameter and responds with an HTTP redirect to a supporting registrar.\n\n## Arguments\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Key\",\n    \"h-1\": \"Value\",\n    \"0-0\": \"`domain`\",\n    \"0-1\": \"Domain name (required).\",\n    \"1-0\": \"`registrar`\",\n    \"1-1\": \"Registrar domain name (optional).\",\n    \"h-2\": \"Example\",\n    \"0-2\": \"`acme.coffee`\",\n    \"1-2\": \"`namecheap.com`\"\n  },\n  \"cols\": 3,\n  \"rows\": 2\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Register request\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"/v2/register?domain=acme.coffee&registrar=namecheap.com\",\n      \"language\": \"http\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Register response\",\n  \"sidebar\": true\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"302 redirect to the registrar\",\n      \"language\": \"text\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","category":"5542b4d1b7f4540d00fcee7a","createdAt":"2015-04-24T19:30:32.305Z","excerpt":"","githubsync":"","hidden":false,"isReference":false,"link_external":false,"link_url":"","order":2,"project":"553a8eeb861cb10d00e32915","slug":"register","sync_unique":"","title":"Register","type":"basic","updates":[],"user":"553a8eb82af5f20d000fc30c","version":"5542b4d1b7f4540d00fcee77","childrenPages":[]}

Register


The Register API takes a domain parameter and responds with an HTTP redirect to a supporting registrar. ## Arguments [block:parameters] { "data": { "h-0": "Key", "h-1": "Value", "0-0": "`domain`", "0-1": "Domain name (required).", "1-0": "`registrar`", "1-1": "Registrar domain name (optional).", "h-2": "Example", "0-2": "`acme.coffee`", "1-2": "`namecheap.com`" }, "cols": 3, "rows": 2 } [/block] [block:api-header] { "type": "basic", "title": "Register request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/register?domain=acme.coffee&registrar=namecheap.com", "language": "http" } ], "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "Register response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "302 redirect to the registrar", "language": "text" } ], "sidebar": true } [/block]
The Register API takes a domain parameter and responds with an HTTP redirect to a supporting registrar. ## Arguments [block:parameters] { "data": { "h-0": "Key", "h-1": "Value", "0-0": "`domain`", "0-1": "Domain name (required).", "1-0": "`registrar`", "1-1": "Registrar domain name (optional).", "h-2": "Example", "0-2": "`acme.coffee`", "1-2": "`namecheap.com`" }, "cols": 3, "rows": 2 } [/block] [block:api-header] { "type": "basic", "title": "Register request", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "/v2/register?domain=acme.coffee&registrar=namecheap.com", "language": "http" } ], "sidebar": true } [/block] [block:api-header] { "type": "basic", "title": "Register response", "sidebar": true } [/block] [block:code] { "codes": [ { "code": "302 redirect to the registrar", "language": "text" } ], "sidebar": true } [/block]