Returns a list of active domains.
Response-Params
Feld | Datentyp | Beschreibung |
---|---|---|
data[].id | int | Domain ID |
data[].domain | string | Domain name |
data[].domain_idn | string | Domain name in IDN format |
data[].firstamount | float | First payment amount |
data[].recurringamount | float | Recurring payment amount |
data[].status | string | Domain status (Active, Pending, Pending Transfer, Expired, Cancelled, Transferred Away, Fraud) |
data[].register_date | string | Domain registration date |
data[].next_due_date | string | Domain expiry date |
data[].next_due_human | string | Domain expiry date in human readable format |
-G 'https://api.pph.sh/client/domains' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": [ { "id": 6129, "domain": "clientify.de", "domain_idn": "clientify.de", "firstamount": 8.99, "recurringamount": 8.99, "status": "Active", "register_date": "2022-08-24T22:00:00.000000Z", "next_due_date": "2023-08-24T22:00:00.000000Z", "next_due_in": 203, "next_due_human": "in 6 Monaten" }, { "id": 5373, "domain": "pph.sh", "domain_idn": "pph.sh", "firstamount": 0, "recurringamount": 0, "status": "Expired", "register_date": "2021-12-26T23:00:00.000000Z", "next_due_date": "2023-12-26T23:00:00.000000Z", "next_due_in": 327, "next_due_human": "in 10 Monaten" }, { "id": 5250, "domain": "nathix.de", "domain_idn": "nathix.de", "firstamount": 0, "recurringamount": 0, "status": "Expired", "register_date": "2021-11-05T23:00:00.000000Z", "next_due_date": "2023-11-05T23:00:00.000000Z", "next_due_in": 276, "next_due_human": "in 9 Monaten" }, { "id": 5082, "domain": "pph.systems", "domain_idn": "pph.systems", "firstamount": 4.99, "recurringamount": 11.99, "status": "Expired", "register_date": "2021-08-31T22:00:00.000000Z", "next_due_date": "2022-08-31T22:00:00.000000Z", "next_due_in": 154, "next_due_human": "vor 5 Monaten" }, { "id": 4953, "domain": "trashmail-api.de", "domain_idn": "trashmail-api.de", "firstamount": 0, "recurringamount": 0, "status": "Expired", "register_date": "2021-07-14T22:00:00.000000Z", "next_due_date": "2024-07-14T22:00:00.000000Z", "next_due_in": 528, "next_due_human": "in 1 Jahr" }, { "id": 4040, "domain": "\u00fcbertragungsdauer.de", "domain_idn": "xn--bertragungsdauer-izb.de", "firstamount": 0, "recurringamount": 0, "status": "Expired", "register_date": "2020-07-15T22:00:00.000000Z", "next_due_date": "2022-07-15T22:00:00.000000Z", "next_due_in": 201, "next_due_human": "vor 6 Monaten" } ] }
Returns information about a single domain.
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to get information about. Example: 4040 required |
Response-Params
Feld | Datentyp | Beschreibung |
---|---|---|
data.id | int | Domain ID |
data.domain | string | Domain name |
data.domain_idn | string | Domain name in IDN format |
data.firstamount | float | First payment amount |
data.recurringamount | float | Recurring payment amount |
data.status | string | Domain status (Active, Pending, Expired, etc.) |
data.register_date | string | Domain registration date |
data.next_due_date | string | Domain expiry date |
data.next_due_human | string | Domain expiry date in human readable format |
-G 'https://api.pph.sh/client/domains/<domainId>' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": { "id": 6129, "domain": "clientify.de", "domain_idn": "clientify.de", "firstamount": 8.99, "recurringamount": 8.99, "status": "Active", "register_date": "2022-08-24T22:00:00.000000Z", "next_due_date": "2023-08-24T22:00:00.000000Z", "next_due_in": 203, "next_due_human": "in 6 Monaten" } }
Returns a list of invoices connected to a domain
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to get invoice from. Example: 4040 required |
-G 'https://api.pph.sh/client/domains/<domainId>/invoices' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": [ { "id": 203625, "duedate": "2022-08-24T22:00:00.000000Z", "datepaid": "2022-08-25T14:38:57.000000Z", "date": "2022-08-24T22:00:00.000000Z", "subtotal": 7.55, "credit": 8.99, "tax": 1.44, "taxrate": 19, "total": 8.99, "status": "Paid", "status_label": "Bezahlt", "is_open": false, "items": [ { "id": 235213, "invoiceid": 203625, "type": "DomainRegister", "short_description": "Domainregistrierung - clientify.de - 1 Jahr(e) (25.08.2022 - 24.08.2023)", "description": "Domainregistrierung - clientify.de - 1 Jahr(e) (25.08.2022 - 24.08.2023)", "relid": 6129, "amount": 8.99, "taxed": 1, "donation": false } ], "donation_invoice": false, "resources": { "invoice": "https:\/\/api.pph.sh\/client\/invoices\/203625", "download": "https:\/\/api.pph.sh\/client\/invoices\/203625\/download" } } ], "links": { "first": "https:\/\/fsn-01.api.pph.sh\/client\/domains\/6129\/invoices?page=1", "last": "https:\/\/fsn-01.api.pph.sh\/client\/domains\/6129\/invoices?page=1", "prev": null, "next": null }, "meta": { "current_page": 1, "from": 1, "last_page": 1, "links": [ { "url": null, "label": "« Previous", "active": false }, { "url": "https:\/\/fsn-01.api.pph.sh\/client\/domains\/6129\/invoices?page=1", "label": "1", "active": true }, { "url": null, "label": "Next »", "active": false } ], "path": "https:\/\/fsn-01.api.pph.sh\/client\/domains\/6129\/invoices", "per_page": 15, "to": 1, "total": 1 } }
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | The Domain ID. Example: 4040 |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/redirect/subdomains' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": { "domain": "6129", "subDomains": [] } }
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | The Domain ID. Example: 4040 |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/redirect' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": { "redirects": [] } }
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | The Domain ID. Example: 4040 |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/redirect/build' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
Returns a domains nameservers as set by the registrar.
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to get information about. Example: 4040 |
Response-Params
Feld | Datentyp | Beschreibung |
---|---|---|
nameservers | array | The nameservers of the domain |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/nameserver' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": { "domain": "clientify.de", "nameservers": [ "ns1.kramer-dns.de", "ns2.kramer-dns.de", "ns3.kramer-dns.de" ] } }
Set the nameservers of a domain.
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to set the nameservers for. Example: 4040 required |
Body-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
nameservers | string[] | List of nameservers. A minimum of 2 is required. A maximum of 5 is possible. required |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/nameserver' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | The | domain id. Example: 4040 |
Query-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
nameserver | The | first nameserver. Example: ns1.kramer-dns.de |
Response-Params
Feld | Datentyp | Beschreibung |
---|---|---|
data.nameservers | array | The nameservers as responded by the first NS |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/nameserver/autocomplete' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": { "nameservers": [ "ns1.kramer-dns.de", "ns2.kramer-dns.de", "ns3.kramer-dns.de" ] } }
Returns a list of DNS records in kramer-dns for a domain.
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to get information about. Example: 4040 required |
Query-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
all | bool | Whether to return all records, including hidden (non updatable) records (NS, SOA) |
Response-Params
Feld | Datentyp | Beschreibung |
---|---|---|
domain | string | Domain name |
records | object[] | DNS records |
records[].id | DNS | record ID |
records[].name | DNS | record name |
records[].full_name | DNS | record full name |
records[].type | DNS | record type |
records[].content | DNS | record content |
records[].ttl | DNS | record ttl |
records[].editable | Whether | this dns record is editable |
records[].priority | DNS | record priority |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/records' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": { "domain": "clientify.de", "records": [ { "id": 328030, "name": "www", "full_name": "www.clientify.de", "type": "A", "content": "127.0.0.1", "last_changed": 1669977296, "ttl": 86400, "editable": true }, { "id": 328035, "name": "mail", "full_name": "mail.clientify.de", "type": "A", "content": "127.0.0.1", "last_changed": 1669977296, "ttl": 86400, "editable": true }, { "id": 332275, "name": "local", "full_name": "local.clientify.de", "type": "A", "content": "217.249.40.72", "last_changed": 1675127889, "ttl": 3800, "editable": true }, { "id": 328038, "name": "", "full_name": "clientify.de", "type": "A", "content": "127.0.0.1", "last_changed": 1669977296, "ttl": 86400, "editable": true }, { "id": 328037, "name": "*", "full_name": "*.clientify.de", "type": "A", "content": "127.0.0.1", "last_changed": 1669977296, "ttl": 86400, "editable": true }, { "id": 332274, "name": "local", "full_name": "local.clientify.de", "type": "AAAA", "content": "2003:db:57ff:7e9:66fd:96ff:fe4b:933d", "last_changed": 1675127889, "ttl": 3800, "editable": true }, { "id": 328039, "name": "webmail", "full_name": "webmail.clientify.de", "type": "CNAME", "content": "webmail.kramer-hosting.de", "last_changed": 1669977296, "ttl": 86400, "editable": true }, { "id": 328036, "name": "", "full_name": "clientify.de", "type": "MX", "content": "mail.clientify.de", "last_changed": 1669977296, "ttl": 86400, "editable": true, "priority": 10 }, { "id": 328033, "name": "", "full_name": "clientify.de", "type": "NS", "content": "ns1.kramer-dns.de", "last_changed": 1669977296, "ttl": 86400, "editable": false }, { "id": 328034, "name": "", "full_name": "clientify.de", "type": "NS", "content": "ns2.kramer-dns.de", "last_changed": 1669977296, "ttl": 86400, "editable": false }, { "id": 328040, "name": "", "full_name": "clientify.de", "type": "NS", "content": "ns3.kramer-dns.de", "last_changed": 1669977296, "ttl": 86400, "editable": false }, { "id": 328031, "name": "", "full_name": "clientify.de", "type": "SOA", "content": "ns1.kramer-dns.de. hostmaster.kramer-dns.de. 2022120200 43200 7200 1209600 86400", "last_changed": 1669977296, "ttl": 43200, "editable": false }, { "id": 328032, "name": "", "full_name": "clientify.de", "type": "SOA", "content": "ns1.kramer-dns.de. hostmaster.kramer-dns.de. 2023013103 43200 7200 1209600 86400", "last_changed": 1675127889, "ttl": 86400, "editable": false }, { "id": 328041, "name": "_dmarc", "full_name": "_dmarc.clientify.de", "type": "TXT", "content": "\"v=DMARC1; p=none\"", "last_changed": 1669977296, "ttl": 86400, "editable": true, "txt": [] } ] } }
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | The | domain id. Example: 4040 |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/connect' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
{ "data": [ { "id": 41986, "label": "92351-62462.pph-server.de", "product": "KVM Root Server", "ips": [ "45.145.225.180" ] }, { "id": 41905, "label": "88836-41003.pph-server.de", "product": "KVM Root Server", "ips": [ "45.84.199.31" ] }, { "id": 41922, "label": "88042-41003.pph-server.de", "product": "KVM Root Server", "ips": [ "45.84.199.118" ] } ] }
Query-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
reset | boolean | Whether the DNS should be reset before. |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/connect/<hostingId>' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
You can automatically connect minecraft and teamspeak servers with your domain without losing its possibility to connect to another server (like a webpage) in the browser.
This will create a new A-Record in the domain and use it in the target field for the srv record.
Example: Connect domain.com with 127.0.0.1:25565
-> Creates new A-Record with "name" mc-127-0-0-1.domain.com
and content 127.0.0.1
-> Creates new SRV-Record with "name" $subdomain
and content 0 25565 mc-127-0-0-1.domain.com
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to get information about. Example: 4040 required |
Body-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
type | string | The srv type. One of: minecraft, teamspeak. Example: minecraft |
subdomain | string | The subdomain to use. Defaults to empty. |
ip | string | The target IP. You can specify a domain name, whose A-Record IP will be used. Example: 127.0.0.1 |
port | string | The target port. Must be greater than 0 and lower than 65565. Example: 25565 |
skip_a_record | boolean | Skip automatically creating an A-Record for this target. Can only be used when ip is a resolvable hostname. Defaults to false. |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/srv' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID. Example: 4040 required |
Body-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
record[name] | string | The record name. Example: minecraft |
record[content] | string | The record content. Example: 127.0.0.1 |
record[type] | string | The record type. Example: A |
record[priority] | string | The record priority. Example: 0 |
record[ttl] | string | The record ttl. Example: 1880 |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/create' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
Updates a single kramer dns record for a domain.
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to get information about. Example: 4040 required |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/update' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
Replaces an IP address with another IP address in all dns records.
URL-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
domainId | int | Domain ID to get information about. Example: 4040 required |
Body-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
old_ip | string | The old ip. Example: 149.202.17.134 required |
new_ip | string | The new ip. Example: 51.89.85.77 required |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/replace-ip' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
Permanently removes a dns record from kramer dns for a domain
Body-Parameter
Feld | Datentyp | Beschreibung |
---|---|---|
record.id | int | Record ID to remove. Example: 4040 required |
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/delete' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
Completely resets dns records in kramer dns for a domain
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/reset' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/import' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq
-G 'https://api.pph.sh/client/domains/<domainId>/dns/record/export' \
-H 'Authorization: Bearer ${ACCESS_TOKEN}' \
-H 'Content-Type=application/json' \
-H 'Accept=application/json' \
-H 'Accept-Language=de; *;q=0.5' | jq