# Domains

## query-domain-list

**Accepts (optional)**

<table border="1" id="bkmrk-pattern-pattern-to-m" style="width: 80%;"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">pattern</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">Pattern to match (globbing, like "dom\*")</span></td></tr><tr><td>*<span style="font-size: small;">from</span>*

</td><td><span style="font-size: small;">Start from this item in list</span>

</td></tr><tr><td>*<span style="font-size: small;">to</span>*

</td><td><span style="font-size: small;">End by this item</span>

</td></tr><tr><td><span style="font-size: small;">*showstatus*    
</span>

</td><td><span style="font-size: small;">Returns additional column, showing domain status; may be 0 or 1  
</span>

</td></tr><tr><td>*<span style="font-size: small;">showgrants</span>*

</td><td><span style="font-size: small;">Returns additional column, showing domain grants; may be 0 or 1  
</span>

</td></tr><tr><td>*<span style="font-size: small;">showprivacy </span>*

</td><td><span style="font-size: small;">Returns additional columns, showing privacy status; may be 0 or 1  
</span>

<span style="font-size: small;">The following columns will be added:  
</span>

<span style="font-size: small;">privacy-status - shows the currently active privacy status  
privacy-origin - shows the privacy status, which was bought  
privacy-expiration - shows the expiration date of privacy</span>

</td></tr></tbody></table>

**Returns**

<span style="font-size: small;">List of registered domains and their expiration dates (one per line, separated by whitespace). If "showstatus" is present, the the list will be with three columns, the last one showing domain status (like "lock,autorenew" etc - comma separated). </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

`<span style="font-size: small; font-family: courier new,courier;">https://dmapi.joker.com/request/query-domain-list?pattern=a*&showstatus=1&auth-sid=<your-current-session-id></span>`

## domain-register

**Requires (mandatory)**

<table border="1" id="bkmrk-domain%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0-domain-n" style="width: 546px; height: 128px;"><tbody><tr><td>*domain* </td><td>Domain name to register</td></tr><tr><td>*period*</td><td>Registration period in **months** (not in years!)</td></tr><tr><td>*status*</td><td>Set domain status (only "production" is accepted so far)</td></tr><tr><td>*owner-c*</td><td>Owner contact handle</td></tr><tr><td>*billing-c*</td><td>Billing contact handle</td></tr><tr><td>*admin-c*</td><td>Administrative contact handle</td></tr><tr><td>*tech-c*</td><td>Technical contact handle</td></tr><tr><td>*ns-list*</td><td>List of name servers, delimited by colon</td></tr></tbody></table>

**Accepts (optional)**

<table border="1" id="bkmrk-autorenew-if-set-to-" style="width: 600px; height: 64px;"><tbody><tr><td>*autorenew*</td><td>if set to "1", domain will be autorenewed upon expiration</td></tr><tr><td>*language*</td><td>3 letter language code for <abbr class="glossary" title="Internationalized Domain Names">IDN</abbr> domains

</td></tr><tr><td>*registrar-tag* </td><td>Registrar tag, also known as "Membership token", currently only needed for .**XXX** domains

</td></tr><tr><td>*privacy*</td><td>basic|pro|none - adds whois privacy subscription to domain order, see also Whois Privacy Services

</td></tr><tr><td>*max-price*</td><td>maximum price user is willing to pay for a domain registration, renewal or transfer. If provided, it must be a number (fractions allowed) above 0.

If not provided and domain has non-standard pricing, or if *max-price* is lower than actual domain price at the moment of registration, the request will fail.   
If *max-price* is higher than the actual domain price, then only the actual price will be deducted

</td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">This request allows to **register** a domain.   
</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">You must have **registered contacts** (handles) to be able to register a domain.(=&gt; contact-create, query-contact-list)  
</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Important:** Please note that the registration period is in **months, not years**. In most cases, this number is a **multiple of 12**.  
</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">`<span style="font-size: small; font-family: courier new,courier;">https://dmapi.joker.com/request/domain-register?domain=example.com&period=12&status=production&owner-c=COCO-4711&billing-c=COCO-4712&admin-c=COCO-4712&tech-c=COCO-4712&ns-list=a.ns.joker.com,b.ns.joker.com,c.ns.joker.com&auth-sid=<your-current-session-id></span>`</span>

## domain-renew

**Requires (mandatory)**

<table border="1" id="bkmrk-domain-domain-name-t" style="width: 80%;"><tbody><tr><td>*domain*</td><td>domain name to renew</td></tr><tr><td>*period*</td><td>renewal period in **months** (not in years!)</td></tr><tr><td>*expyear*

</td><td>the wanted expiration year (e.g. '2014')</td></tr></tbody></table>

**Accepts (optional)**

<table border="0" id="bkmrk-privacy-%C2%A0-%C2%A0-%C2%A0-%C2%A0%C2%A0-bas" style="width: 667px; height: 105px;"><tbody><tr><td>*privacy*  </td><td>basic|pro|none|keep - adds whois privacy subscription to domain renewal</td></tr><tr><td> </td><td>none: explicitly do a renew without privacy services, even if currently privacy is enabled

keep: renew with the same level of privacy service which is currently active for the domain

see also Whois Privacy Services

</td></tr><tr><td>*max-price*</td><td><table border="1"><tbody><tr><td> </td><td>maximum price user is willing to pay for a domain registration, renewal or transfer. If provided, it must be a number (fractions allowed) above 0.

If not provided and domain has non-standard pricing, or if *max-price* is lower than actual domain price at the moment of registration, the request will fail.   
If *max-price* is higher than the actual domain price, then only the actual price will be deducted

</td></tr></tbody></table>

</td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> With this request you can renew the domain. Please be aware that all renewals are not refundable. </span>

"**expyear**" is a safety option which can be used **instead of "period"** to renew domain till specified year (not longer). If you use "period", and by mistake send the request more than once, domain will be renewed again, while with "expyear", it will not be renewed if it's expiration year is greater or equals to specified.

**Only one of "period" or "expyear" may be used, but not both.**

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Please note:** </span>

- <span style="font-family: arial,helvetica,sans-serif; font-size: small;">registration period is in **months, not years**! In most cases, this number is a **multiple of 12**.  
    </span>
- <span style="font-family: arial,helvetica,sans-serif; font-size: small;">to prevent from unintended/errorneous multiple renewals, **a specific domain name can only be renewed once per 6 hours.** This means, if you want to renew a domain for 2 years, you should use a period of "24" - in case you want to renew using two requests with a period of "12", the 2nd request must not be sent before 6 hours after the 1st one.  
    </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">`<span style="font-size: small; font-family: courier new,courier;">  https://dmapi.joker.com/request/domain-renew?domain=example.com&period=12&auth-sid=<your-current-session-id</span>`<span style="font-size: small; font-family: courier new,courier;"> </span></span>

## domain-modify

**Requires (mandatory)**

<table border="1" id="bkmrk-domain-domain-name-t-1" style="width: 294px; height: 18px;"><tbody><tr><td>*domain*</td><td style="text-align: left;">domain name to modify</td></tr></tbody></table>

**Accepts (optional)**

<table border="1" id="bkmrk-billing-c-domain-con"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> billing-c</span>*</td><td rowspan="3"><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain contact data to modify </span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> admin-c</span>*</td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> tech-c</span>*</td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> ns-list </span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">list of new nameservers delimited by colon ":" (it will **<span class="moz-txt-underscore">replace</span>** existing nameservers!)</span></td></tr><tr><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">*registrar-tag*  </span></td><td>Registrar tag, also known as "Membership token", currently used for **.XXX** domains

</td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">dnssec</span>*</td><td>i<span style="font-family: arial,helvetica,sans-serif; font-size: small;">f specified, allows setting or removal of DNSSEC keys for domain. If not specified, DNSSEC records will not be changed. Value of "0" will remove DNSSEC, value of "1" will add DNSSEC (and ds-N parameters must be provided)</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> ds-1 list of DNSSEC parameter sets (min. 2, max. 6) for DNSSEC enabled domains   
 ds-2 for com/net/org/tv/cc each entry has format:   
 ds-3 tag:alg:digest-type:digest   
 ds-4 for de:   
 ds-5 protocol:alg:flags:pubkey-base64   
 ds-6   
</span>

</td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
With this request you can modify </span>

- <span style="font-family: arial,helvetica,sans-serif; font-size: small;">contact handles</span>
- <span style="font-family: arial,helvetica,sans-serif; font-size: small;">nameservers </span>
- <span style="font-family: arial,helvetica,sans-serif; font-size: small;">DNSSEC </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">parameters (for DNSSEC capable nameservers and TLDs supporting DNSSEC) </span>

<span style="font-size: small;"> </span><span style="font-size: small;">Please only specify contact handles which you want to modify, all unspecified handles will be left as is.</span>

<span style="font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">For DNSSEC, you will find more information [here](http://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions) .</span>

**Example:**

<div id="bkmrk-1-%C2%A0%C2%A0https%3A%2F%2Fdmapi.jo"><div class="syntaxhighlighter  plain" id="bkmrk-1-%C2%A0%C2%A0https%3A%2F%2Fdmapi.jo-1"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`<a href="https://dmapi.joker.com/request/domain-modify?ns-list=a.my-own-ns.com:b.my-own-ns.com&auth-sid=<your-current-session-id">https://dmapi.joker.com/request/domain-modify?ns-list=a.my-own-ns.com:b.my-own-ns.com&auth-sid=<your-current-session-id</a>>`</div></div></td></tr></tbody></table>

</div></div>**<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span>Example for adding a key** (and enabling DNSSEC):

<div id="bkmrk-1-http%3A%2F%2Fdmapi.joker"><div class="syntaxhighlighter  plain" id="bkmrk-1-http%3A%2F%2Fdmapi.joker-1"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`<a href="http://dmapi.joker.com/request/domain-modify?domain=example.de&dnssec=1&ds-1=256:3:5:AwEAAd4TaRzEn0zJfw9w2qkazHTqOX97XwNzoDHMKgClJbX/jr9YGdCYKpTfcKQbVmpI4EVBJOjNWawOJEgpVivw53yHbtEFLOCSYyjwHuXaWiEv0sESNAoPCXQurp4tbHSlnRpyxyzV3dsh9/qUIkJEXxcEuFPaLG3bz1z0Ude6gMXr">http://dmapi.joker.com/request/domain-modify?domain=example.de&dnssec=1&ds-1=256:3:5:AwEAAd4TaRzEn0zJfw9w2qkazHTqOX97XwNzoDHMKgClJbX/jr9YGdCYKpTfcKQbVmpI4EVBJOjNWawOJEgpVivw53yHbtEFLOCSYyjwHuXaWiEv0sESNAoPCXQurp4tbHSlnRpyxyzV3dsh9/qUIkJEXxcEuFPaLG3bz1z0Ude6gMXr</a>`</div></div></td></tr></tbody></table>

</div></div><div id="bkmrk-1-http%3A%2F%2Fdmapi.joker-2"><div class="syntaxhighlighter  plain" id="bkmrk-1-http%3A%2F%2Fdmapi.joker-3"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`<a href="http://dmapi.joker.com/request/domain-modify?domain=example.com&dnssec=1&ds-1=38698:5:1:AFE249392848D0458B3967BA1EE9BDEA6C3ECB43">http://dmapi.joker.com/request/domain-modify?domain=example.com&dnssec=1&ds-1=38698:5:1:AFE249392848D0458B3967BA1EE9BDEA6C3ECB43</a>`</div></div></td></tr></tbody></table>

</div></div>**Example for removing DNSSEC information:**

<div id="bkmrk-1-https%3A%2F%2Fdmapi.joke"><div class="syntaxhighlighter  plain" id="bkmrk-1-https%3A%2F%2Fdmapi.joke-1"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`<a href="https://dmapi.joker.com/request/domain-modify?domain=example.com&dnssec=0">https://dmapi.joker.com/request/domain-modify?domain=example.com&dnssec=0</a>`</div></div></td></tr></tbody></table>

</div></div>## domain-delete

**Requires (mandatory)**

<table border="1" id="bkmrk-domain%C2%A0%C2%A0%C2%A0-domain-nam"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain   
</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain name to delete</span></td></tr></tbody></table>

**Accepts (optional)**

<table border="1" id="bkmrk-force-%C2%A0-%C2%A0-%C2%A0-if-prese" style="width: 80%;"><tbody><tr><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">*force*    
</span></td><td align="left"><span style="font-family: arial,helvetica,sans-serif; font-size: small;">if present and set to '1', 'Y' or 'Yes', the domain will be deleted even if older than 72 hours.</span></td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
With this request you can delete a domain. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> If you delete a domain (**gTLDs only**) within the **first 72 hours** after the registration, **the registration-fee will be refunded** to your account. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> To delete a domain which is registered for more than 72 hours, you must specify "force=1", otherwise the request will be rejected.  
Please note: The number of refundable deletions of domains per month is limited, and depends on the number of domains in a portfolio, and the related TLD registry.</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<div id="bkmrk-https%3A%2F%2Fdmapi.joker.-2"><div class="syntaxhighlighter  plain" id="bkmrk-https%3A%2F%2Fdmapi.joker.-3">`<a href="https://dmapi.joker.com/request/domain-delete?domain=example.com&force=1&auth-sid=<your-current-session-id">https://dmapi.joker.com/request/domain-delete?domain=example.com&force=1&auth-sid=<your-current-session-id</a>>`</div></div>## domain-owner-change

**Requires**

<table border="1" id="bkmrk-domain-domain-name-t-2" style="width: 80%;"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain name to change the owner of</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">name</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional) full name (if empty, fname + lname will be used)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">fname</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">first name</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">lname</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">last name</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">title</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">individual</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional) Y, Yes, N, No</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">organization </span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional if individual)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">email</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">mailaddress of the contact</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">address-1</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">street address</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">address-2</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">address-3</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">city</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">state</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">postal-code</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">country</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">ISO country code (2 letters)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">phone</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">extension</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional)</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">fax</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional)</span></td></tr><tr><td> </td><td> </td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">lock-opt-out</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">(optional) yes, no **(new IRTP-C: do not apply a 60 days transfer lock to the domain)**</span></td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
With this request you can change the visible **WHOIS owner** of a domain. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> Either "name" or "lname" and "fname" must be provided. Fields **not** marked as optional are mandatory, and must not be empty. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">For the revised ICANN IRTP-C (change of registrar) policy, please also visit our [documentation](https://joker.com/goto/resdocs).  
</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<div id="bkmrk-1-https%3A%2F%2Fdmapi.joke-2"><div class="syntaxhighlighter  plain"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`<a href="https://dmapi.joker.com/request/domain-owner-change?domain=example.com&fname=John&lname=Doe&email=johnd@someisp.com&address-1=Smartroad">https://dmapi.joker.com/request/domain-owner-change?domain=example.com&fname=John&lname=Doe&email=johnd@someisp.com&address-1=Smartroad</a>1&city=Smalltown&postal-code=40122&country=US&phone=+1.422.8001&auth-sid=<your-current-session-id>`</div></div></td></tr></tbody></table>

</div></div>## domain-lock

**Requires (mandatory)**

<table border="1" id="bkmrk-domain-domain-name-t-3" style="width: 80%;"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain name to lock</span></td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
With this request you can **lock a domain** to **prevent from fraudulent transfer attempts**. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">If a domain is locked, each transfer-request from a foreign registrar will be declined. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">`<span style="font-size: small; font-family: courier new,courier;">https://dmapi.joker.com/request/domain-lock?domain=example.com&auth-sid=<your-current-session-id></span>`</span>

## domain-unlock

**Requires (mandatory)**

<table border="1" id="bkmrk-domain-domain-name-t-4" style="width: 80%;"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain name to unlock</span></td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">  
With this request you can **unlock a domain**. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">If you want to transfer a domain to a foreign registrar, it has to be unlocked.</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">`<span style="font-size: small; font-family: courier new,courier;">https://dmapi.joker.com/request/domain-unlock?domain=example.com&auth-sid=<your-current-session-id></span>`</span>

## domain-transfer-in-reseller

**Requires (mandatory)**

<table border="1" id="bkmrk-domain-full-qualifie" style="width: 589px; height: 286px;"><tbody><tr><td>*domain*</td><td>full qualified domain name to transfer to Joker.com</td></tr><tr><td>*transfer-auth-id*</td><td>AUTH-ID required for all domains except .eu</td></tr><tr><td>*owner-c*</td><td>new owner contact handle to be used for transferred domain</td></tr><tr><td colspan="2">Accepts (optional)

</td></tr><tr><td>*admin-c*</td><td>new admin contact handle

</td></tr><tr><td>*tech-c*</td><td>new tech contact handle</td></tr><tr><td>*billing-c*</td><td>new billing contact handle</td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">status</span>*</td><td>new domain status to be set after transfer (lock, production)

</td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">period</span>*</td><td>renewal period in months, **not** in years! \[not in use, please leave empty\]

</td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">autorenew</span>*</td><td>Autorenew flag for the domain (0 or 1); if not set explicitly, defaults to 1

</td></tr><tr><td>*ns-list* </td><td>list of colon-separated nameservers

</td></tr><tr><td>*privacy*</td><td>basic|pro|none - adds whois privacy subscription to domain transfer, see also Whois Privacy Services</td></tr><tr><td>*max-price*</td><td>maximum price user is willing to pay for a domain registration, renewal or transfer. If provided, it must be a number (fractions allowed) above 0.

If not provided and domain has non-standard pricing, or if *max-price* is lower than the actual domain price at the moment of registration, the request will fail.   
If *max-price* is higher than the actual domain price, then only the actual price will be deducted

 </td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> With this request you can initiate a transfer of the domain from another registrar to Joker.com.</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">You have to provide a valid **AUTH-ID** (you have to request this from the **current** provider of the domain). </span>

**Please note:**

- please make sure, that there is no so-called 'registry lock' active for the domain to be transferred. Please verify, that the current registrar does not block the domain, resp. deactivates the blocking
- the domain to be transferred must have been active for at least 60 days at the current registrar, otherwise the transfer may fail
- the domain to be transferred must not be object of an active ICANN UDRP dispute procedure
- the domain should have a remaining term of least 7 days, to ensure that the transfer succeeds within the time limits (a maximum of 5 days is granted to confirm or object a transfer). In case the domain has less than 7 days of remaining term, a successful transfer cannot be warranted.
- this procedure will trigger email notifications to the owner and the admin contact of the domain to be transferred (this is following mandatory ICANN transfer provisions)

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<div id="bkmrk-https%3A%2F%2Fdmapi.joker.-6"><div class="syntaxhighlighter  plain" id="bkmrk-https%3A%2F%2Fdmapi.joker.-7">`<a href="https://dmapi.joker.com/request/domain-transfer-in-reseller?domain=example.com&transfer-auth-id=abc123xyz&owner-c=COCO-4711&admin-c=COCO-4712&tech-c=COCO-4712&billing-c=COCO-4712&auth-sid=<your-current-session-id">https://dmapi.joker.com/request/domain-transfer-in-reseller?domain=example.com&transfer-auth-id=abc123xyz&owner-c=COCO-4711&admin-c=COCO-4712&tech-c=COCO-4712&billing-c=COCO-4712&auth-sid=<your-current-session-id</a>>`</div></div><div id="bkmrk-">  
</div>## domain-set-property

**Requires (mandatory)**

<div id="bkmrk-domain-domain-name-o"><table border="1" style="width: 80%;"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain name or pattern</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">pname</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">property name </span></td></tr><tr><td>*<span style="font-size: small;"><span style="font-family: arial,helvetica,sans-serif;">pvalue</span></span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">property value (may be empty)  
</span></td></tr></tbody></table>

</div><span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span>With this request you can set a property (flag) for a domain or a set of domains, selected by wildcard pattern.

List of available properties and their effects:

<div id="bkmrk-autorenew-0-or-1-if-"><table border="0" style="width: 609px; height: 115px;"><tbody><tr><td>*autorenew*</td><td>0 or 1

If set to 1, the domain will be automatically renewed on expiration (if you have enough funds in your account)

</td></tr><tr><td>*whois-opt-out*</td><td> 0 or 1

currently only used for .tel domains; if set to 1, owner information will not be shown in whois

</td></tr><tr><td>*privacy*</td><td>off or basic or pro (if available)

</td></tr><tr><td>*gdpr-opt-in* </td><td>0 or 1

opt-in to display contact data which is normally redacted by GDPR

</td></tr></tbody></table>

</div>If an empty value is provided, then the property will be cleared, i.e. the default will be used.

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<div id="bkmrk-https%3A%2F%2Fdmapi.joker.-8"><div><div class="syntaxhighlighter  plain" id="bkmrk-https%3A%2F%2Fdmapi.joker.-9">`<a href="https://dmapi.joker.com/request/domain-set-property?domain=example.com&pname=autorenew&pvalue=1&auth-sid=<your-current-session-id">https://dmapi.joker.com/request/domain-set-property?domain=example.com&pname=autorenew&pvalue=1&auth-sid=<your-current-session-id</a>>`</div></div></div><div id="bkmrk--1">  
</div>## domain-get-property

<div id="bkmrk--2">  
</div>**Requires**

<div id="bkmrk-domain-domain-name-p"><table border="1" style="width: 80%;"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain name</span></td></tr><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">pname</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">property name (same as in domain-set-property)</span></td></tr></tbody></table>

</div><span style="font-family: arial,helvetica,sans-serif; font-size: small;">With this request you can query the value of a specific property set for a domain. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">It returns a single line, which looks like: </span>

<div id="bkmrk-1-autorenew%3A-0"><div><div class="syntaxhighlighter  plain" id="bkmrk-1-autorenew%3A-0-1"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`autorenew: 0`</div></div></td></tr></tbody></table>

</div></div></div><span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<div id="bkmrk-1-https%3A%2F%2Fdmapi.joke-3"><div><div class="syntaxhighlighter  plain"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`<a href="https://dmapi.joker.com/request/domain-get-property?domain=example.com&pname=autorenew&auth-sid=<your-current-session-id">https://dmapi.joker.com/request/domain-get-property?domain=example.com&pname=autorenew&auth-sid=<your-current-session-id</a>>`</div></div></td></tr></tbody></table>

</div></div></div>## domain-transfer-get-auth-id

**Requires**

<table border="1" id="bkmrk-domain-domain-name-t-5" style="width: 411px; height: 16px;"><tbody><tr><td>*<span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain</span>*</td><td><span style="font-family: arial,helvetica,sans-serif; font-size: small;">domain name to get AUTH-ID for</span></td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">Retrieves domain's **Auth-ID**, which is required when transfering domains to another registrar. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> This request is not real-time, i.e. you have to check detailed reply (use "result-retrieve") to get the Auth-ID. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Please note**: </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Every request will generate a new Auth-ID**, thus rendering any previously requested Auth-ID invalid. </span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;"> </span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<div id="bkmrk-1-https%3A%2F%2Fdmapi.joke-4"><div class="syntaxhighlighter  plain"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="gutter"><div class="line number1 index0 alt2">1</div></td><td class="code"><div class="container"><div class="line number1 index0 alt2">`<a href="https://dmapi.joker.com/request/domain-transfer-get-auth-id?domain=example.com&auth-sid=<your-current-session-id">https://dmapi.joker.com/request/domain-transfer-get-auth-id?domain=example.com&auth-sid=<your-current-session-id</a>>`</div></div></td></tr></tbody></table>

</div></div>## domain-transfer-control

This request allows to retrieve status information for all pending transfers. Additionally, transfers can be cancelled, or the FOA email can be re-sent.

**Parameters:**

```
        action                  One of: <em>list, show, resend-foa, cancel</em>
        domain                  Domain name to control transfer of (ignored when action=<em>list</em>)
 
```

**action=*list***

When action=list, this request returns a list (columns are separated by tabs) of all currently pending transfers:

```
        <domain> <state> <owner-email> <admin-email>
```

where &lt;state&gt; is one of (listed in "natural" transition order):

```
                IN_DB
                PAYMENT_PREPARED
                PAYMENT_ACQUIRED

                PENDING_FOA_SENDING

                        Joker.com could not parse the recipient of the FOA.
                        Manual action from Joker.com is required and happens
                        during office hours, thus in worst case it may take
                        few days (during weekend or holidays).

                FOA_BEEN_SENT
                
                        FOA is sent and Joker.com is waiting for owner's
                        reaction. Owner has 5 days to react, thus the state
                        may last up to 5 days.
                        
                FOA_NACK                FOA is rejected
                FOA_ACK                 FOA is accepted

                REGISTRY_REQUEST_SENT

                REGISTRY_REQUEST_RECEIVED_NOW_WAITING
                
                        FOA had been accepted, transfer request is sent
                        and the losing registrar has to release the domain.
                        This state may take up to 5 days, we could do nothing
                        to speed it up.
                        While in this state, transfer may be cancelled
                        by using "action=cancel".

                REGISTRY_CANCELATION_PENDING
                
                        The user has requested cancel of domain transfer
                        by using "action=cancel".

                DOMAIN_WITH_JOKER_PENDING_COMPLETE
                
                        The domain is actually with Joker.com, but either
                        we haven’t noticed yet (batch pending) or manual
                        work is necessary.
                        Please contact Joker.com if this state lasts longer
                        than 1 hour.

                PAYMENT_COMMITTED

                TRANSFER_PROCESSED_SUCCESSFULLY

```

**action=*show***

When action=*show*, the status of a specified domain is returned like:

```
        domain: example.com
        status: FOA_BEEN_SENT
        owner_email: <a class="moz-txt-link-abbreviated" href="mailto:owner@example.com">owner@example.com</a>
        admin_email: <a class="moz-txt-link-abbreviated" href="mailto:admin@example.com">admin@example.com</a>
        transfer-id: 123456
```

**action=*resend-foa***

When action=resend-foa, FOA will be resent (only possible in state FOA\_BEEN\_SENT).

**action=*cancel***

When action=cancel, the (pending) transfer will be cancelled.

**Returns**

Status code is 1000 for successful request, or &gt;= 2000 otherwise.

**Example**

```
https://dmapi.joker.com/request/domain-transfer-control?domain=example.com&action=resend-foa
```

## domain-check

**Requires (mandatory)**

<table border="1" id="bkmrk-domain-domain-name-t-6" style="width: 80%;"><tbody><tr><td>*domain*</td><td>domain name to check</td></tr></tbody></table>

**Accepts (optional)**

<table border="1" id="bkmrk-check-price-if-provi" style="width: 527px; height: 64px;"><tbody><tr><td>*check-price*</td><td>If provided, specifically check the price for: **create**, **renew**, **transfer**, **restore**</td></tr><tr><td>*period* </td><td>If provided, price will be calculated based on specified period. Period may be specified in years (values from 1 to 10) or in traditional for DMAPI months (&gt;= 12, must be a multiple of 12).

</td></tr><tr><td>*language* </td><td>Relevant only for IDN domains, specifies language as 2 letter (ISO 639.1) or 3 letter (ISO 639.2) code:

[https://www.loc.gov/standards/iso639-2/php/code\_list.php](https://www.loc.gov/standards/iso639-2/php/code_list.php)

</td></tr><tr><td> </td><td> </td></tr></tbody></table>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">With this request you can **check if a domain is available for registration, and what type of domain pricing will be applied for different types of orders.**</span>

**Returns** one or more lines with key-value pairs as follows:

**domain-status:** &lt;status&gt;   
  
&lt;status&gt; can be one of:

<table border="0" id="bkmrk-available%C2%A0%C2%A0%C2%A0%C2%A0-regula"><tbody><tr><td>**available** </td><td>regular domain (non-premium) available for registration</td></tr><tr><td>**premium**</td><td>premium domain available for registration</td></tr><tr><td>**unavailable** </td><td>domain is not available for registration</td></tr></tbody></table>

  
If &lt;status&gt; is "unavailable", then domain-register request will fail, though domain-transfer-\* and domain-renew (if domain is with Joker.com) are possible, of course.   
  
**domain-status-reason:** &lt;status-reason&gt;   
  
Provides human-readable description why domain is unavailable for registration, like *blocked*, *reserved*, *registered* etc.   
May be absent if registry does not provide specific reason. Should not be parsed as value is registry dependent and could be virtually anything.   
  
**domain-class:** &lt;class&gt;   
  
Specifies price-class. Anything but "standard" is considered "premium", though some registries use "tier-1", "premium", "BBB" etc.   
Mostly a hint, values except "standard" should not be interpreted as they have no useful meaning and vary among registries.   
  
**domain-price-&lt;type&gt;:** &lt;price&gt; &lt;currency&gt; &lt;period&gt;y   
  
Reports domain price, where &lt;type&gt; will be value provided in check-price parameter, i.e. create, renew, transfer, restore.

- &lt;price&gt; is the final price, i.e. amount that will be deducted from the user's account, considering all discounts, promos etc.
- &lt;currency&gt; is a 3-letter currency code, serves only as information.
- &lt;period&gt; is reported in years and suffixed by "y", like "5y", and it may be different from "period" parameter value (depends on registry), for instance when requested period is not available, too low or too high.   
    The price reported is valid only for specified period, i.e. if price is 100 for 2 years it does not necessarily mean that price for 1 year is 50, thus it only makes sense to check price for the period which will be used verbatim in subsequent request of specified &lt;type&gt;.

**domain-price-promo:** &lt;start&gt; &lt;end&gt;   
  
&lt;start&gt; and &lt;end&gt; are ISO timestamps in format like *2019-07-01T00:00:00.000Z*

For domains that have promotional pricing, this provides start and end timestamps of promotional period. Usually its mere presence means that promo-pricing is in effect, but to be sure values have to be checked explicitly.   
**If "domain-status" returned "premium" or "domain-class" returned anything but "standard", then the parameter *max-price* must be present in register/transfer/renew requests.**   
  
Full response example (web.blog):

```
    domain-status: unavailable <br></br>    domain-status-reason: blocked <br></br>    domain-class: standard <br></br>    domain-price-create: 8.21 USD 1y <br></br>    domain-price-promo: 2019-09-01T00:00:00.000Z 2019-12-31T23:59:59.000Z 
```

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">**Example:**</span>

<span style="font-family: arial,helvetica,sans-serif; font-size: small;">`<span style="font-size: small; font-family: courier new,courier;">https://dmapi.joker.com/request/domain-check?domain=example.com&auth-sid=<your-current-session-id></span>`</span>

<div id="bkmrk--3"><div class="syntaxhighlighter  plain" id="bkmrk--4"></div></div><div id="bkmrk--5"><div><div class="syntaxhighlighter  plain" id="bkmrk--6"></div></div></div><div id="bkmrk--7"><div class="syntaxhighlighter  plain" id="bkmrk--8"></div></div>