# Account and Handling ## login ### Login with Username & Password **Requires (mandatory):**
*username* Joker.com username (email address)
*password*Joker.com password
**Returns:**
*Auth-SID*Authenticated Session ID, must be provided with any other request (parameter *auth-sid*)
*List of TLDs*List of domain TLDs which are available to the reseller.
To be able to use the entire API, you must have a reseller account with Joker.com (and use this account to log in). **Example:** `  https://dmapi.joker.com/request/login?username=johndoe&password=mypass` ### Login with API Keys Instead of using your user- and password credentials, you may also use so called '**API keys**' for login. This way, you can create several DMAPI access facilities, which has several advantages: - you do not need to expose username and password in your scripts - API keys **can be restricted** to be "read only" (no modifications possible), or to allow 'modifications only' (can not produce costs) - you may hand API keys to your staff to enable them to do specific things with Joker.com Create your API keys in '[**My Profile**](https://joker.com/goto/myjoker)' in section '**Manage Joker.com API access keys**' Example usage: ``` https://dmapi.joker.com/request/login?api-key=Key_created_in_your_Profile_at_Joker.com ``` The result is the same as for "login"-request, you have to use the provided auth-sid for the subsequent actions. ## logout **Returns: Nothing** Used to forcibly close (terminate) a session. The session identified by Auth-SID may not be used anymore to send requests. Normally not required as session will timeout anyway (default: 1 hour). ## result-list **Accepts:**
*pending* get results of requests still in progress
*showall*get all results incl. deletes using result-delete
*period*get results for specifed period of days (default: 90)
*date*get results received on (or before) specified date. When date is specified, parameter "period" will be applied to this date (instead of today) and defaults to 1
*offset*start dispalying results from specified position
*limit*only get number of results specified by limit
*status*get results having specified status (ack/nack/?)
*count-only* when set to 1, only count number of records and return single line in format "Records: N"
All following filters may use patterns ("\*" and "?")
*rtype* get results for requests of specified type (domain-register/etc)
*objid*get results for specified object ids (domain names, contacts, hosts)
*procid*get results for specified proc-id
*svtrid*get results for specifued SvTrId
*cltrid*get results for specified ClTrId
**Returns:** List of answers from joker.com (one per line): ``` TimeStamp SvTrId Proc-ID request-type status ClTrId ``` **Where:** ``` TimeStamp: The time when request was made, YYYYMMDDHHMMSS SvTrID: Tracking-Id associated with this request. Proc-ID: Proc-Id associated with this request. request-type: The type of the request. request-object: The object name (host, domain or contact handle) status: ack, nack or ?, where ack means that request was completed successfully. ClTrId: User specified transaction ID, or "-" if nothing was provided by the user ``` **Example:** ``` https://dmapi.joker.com/request/result-list?auth-sid=20ddb8c3b2ea758dcf9fa4c7f46c0784 ``` ## result-retrieve **Accepts:**
*Proc-ID*One of these must be specified. If both are specified, SvTrId has precedence.
*SvTrID*
**Returns:**
Answer (processing result) associated with specified Tracking/Processing ID. If detailed information (content) is not available, only status will be returned
**Please note:** Since there is no requirement of uniqueness for user-specified transaction ids, it is not possible to use them to retrieve specific results. **Example:** `  https://dmapi.joker.com/request/result-retrieve?proc-id=8181810&auth-sid=` ## result-delete **Accepts:**
*Proc-ID* One of these must be specified. If both are specified, SvTrId has precedence
*SvTrID*
**Returns:** A descriptive message (confirmation) in case of success. This request will delete the content (not the status) of a reply to an asynchronous request. Deleted results will not be listed anymore when using *result-list*. ## query-profile **Returns:** Returns reseller profile data in format "key: value". May be used to query account balance Example: ``` https://dmapi.joker.com/request/query-profile?auth-sid=20ddb8c3b2ea758dcf9fa4c7f46c0784 ```