Abuse desk and DNSSEC API
Read and add abuse complaints, set their status, add notes, and read or switch DNSSEC of a zone with the token API.
The token API reaches the abuse desk and DNSSEC of a zone. Send the token as
Authorization: Bearer hf_… to https://api.yourdomain.com:2087/v1.
Abuse complaints
Administrator tokens see every complaint. Reseller tokens see their own customers' complaints while the administrator
lets resellers see complaints (otherwise 403). Customer tokens get 403.
| Method and path | What it does |
|---|---|
GET /abuse |
Complaints, newest first. ?status=new, waiting, resolved or all (default: new and waiting), ?q= text in the subject, domain, IP, account or reporter. |
POST /abuse |
Add a complaint (administrator tokens, "Read & change"). It is read and linked to an account like an email. Answers 201. |
GET /abuse/{id} |
One complaint with its text and timeline. |
POST /abuse/{id}/status |
Set the status: {"status": "resolved"} (new, waiting or resolved). |
POST /abuse/{id}/notes |
Add a staff note: {"text": "Customer removed the page."}. |
The fields of POST /abuse:
| Field | What it is |
|---|---|
body |
the complaint's text (required) |
kind |
spam, phishing, malware, copyright, attack or other (default: worked out) |
subject, reporter_name, reporter_email |
a short line, who reported it and where to answer |
ip, domain, url, when |
what it is about, when the reporter knows (when in ISO 8601) |
curl -s -X POST https://api.yourdomain.com:2087/v1/abuse \
-H "Authorization: Bearer hf_…" -H "Content-Type: application/json" \
-d '{"kind":"phishing","url":"https://login.sarahbakes.co.uk/bank","body":"Fake bank login page.","reporter_email":"abuse@isp.example"}'
A complaint in an answer has id, status, kind, source, subject, ip, domain, url, occurred_at,
account (the linked account's username, or empty), reporter_name, reporter_email, linked_by, created_at and
updated_at.
DNSSEC of a zone
| Method and path | What it does |
|---|---|
GET /accounts/{username}/dns/{zone}/dnssec |
The status: enabled, status (off, waiting, signed or unsupported), bind (version), keys, ds (the DS records to add at the registrar: key_tag, algorithm, digest_type, digest, record), dnskey, key_state (BIND's report on the keys and their rollover), registrar_managed and registrar_in_sync. |
POST or PUT /accounts/{username}/dns/{zone}/dnssec |
Turn signing on or off: {"enabled": true}. Runs the DNS zone editor's own action, so the activity log and the registrar's DS records are handled the same way. |
When the domain was bought through the panel's domain sales with a provider that takes DS records,
registrar_managed is true and the panel sends the DS records itself (registrar_in_sync tells whether the
registrar has the current ones).