NAV
json

CloudPit API Reference

This API documentation describes the functionality and usage of the CloudPit API v2.

Changelog

Version 1.11.0

Version 1.10.0

Version 1.9.0

Version 1.8.0

Version 1.7.0

Version 1.6.0

Version 1.5.2

Version 1.5.1

Version 1.5.0

Version 1.4.0

Version 1.3.0

Version 1.2.0

Version 1.2.0

Version 1.1.2

Version 1.1.1

Version 1.1

Version 1.0

Protocol

The API is strictly based on the JSON:API protocol which can be found here.

Endpoint

The API endpoint is IP restricted and available at the following URL: https://api.cloudpit.io/v2
For the OAuth2 authentication, all actions are available at https://cloudpit.io/oauth

You MUST provide this IP address to us. Keep in mind that it's mandatory to use a static IP address to use our API.

Authentication

We only support the OAuth2 authentication for our API. The Two-Legged OAuth (or Client Credential Grant Token) method supports the machine-to-machine authentication and is described below.

Client credentials

Initially you need a dedicated client id and secret which is bound to a CloudPit account. All API actions will be executed in the name of that referenced account. The access of the client MAY be restricted to certain API actions.

Request an access token

curl --request POST \
  --url 'https://cloudpit.io/oauth/token' \
  --header 'Content-Type: application/json' \
  --data '{"grant_type":"client_credentials","client_id": "YOUR_CLIENT_ID","client_secret": "YOUR_CLIENT_SECRET"}'

Sample response

{
    "token_type": "Bearer",
    "expires_in": 1295999,
    "access_token": "YOUR_ACCESS_TOKEN"
}

To send authenticated requests to the API, you need to request an access token like in the given example. All access tokens have a restricted lifetime (15 days by default).

Authorize requests

curl --request GET \
  --url 'https://api.cloudpit.io/v2/account' \
  --header 'Authorization: Bearer YOUR_ACCESS_TOKEN'

After you successfully generated your access token, you can call all available API actions like in the given example, including your new access token.

Endpoints

Describes all available endpoints and possible actions. Including example JSON documents.

API Version 2

A reference for all existing API Version 2 endpoints and actions.

account

List accounts

Sample response

{
    "meta": {
        "page": {
            "current-page": 1,
            "per-page": 1,
            "from": 1,
            "to": 1,
            "total": 1,
            "last-page": 1
        }
    },
    "links": {
        "first": "https://api.cloudpit.io/v2/account?sort=id&page%5Bnumber%5D=1&page%5Bsize%5D=1",
        "next": "https://api.cloudpit.io/v2/account?sort=id&page%5Bnumber%5D=1&page%5Bsize%5D=1",
        "last": "https://api.cloudpit.io/v2/account?sort=id&page%5Bnumber%5D=1&page%5Bsize%5D=1"
    },
    "data": [
        {
            "type": "account",
            "id": "1234",
            "attributes": {
                "parent": "1",
                "login": "testUser",
                "email": "api@docs.local",
                "emailInvalid": false,
                "displayName": "testUser@CloudPit",
                "salutation": "m",
                "company": "ApiDocs GmbH",
                "firstname": "John",
                "lastname": "Doe",
                "language": "1",
                "password": null,
                "active": true,
                "alias": null,
                "subReseller": null,
                "passwordEmailDisabled": false,
                "created_at": "2024-03-25T09:08:37+01:00",
                "updated_at": "2024-03-25T09:08:37+01:00"
            },
            "relationships": {
                "language": {
                    "links": {
                        "self": "https://api.cloudpit.io/v2/account/1234/relationships/language",
                        "related": "https://api.cloudpit.io/v2/account/1234/language"
                    }
                },
                "parent": {
                    "links": {
                        "self": "https://api.cloudpit.io/v2/account/1234/relationships/parent",
                        "related": "https://api.cloudpit.io/v2/account/1234/parent"
                    }
                }
            },
            "links": {
                "self": "https://api.cloudpit.io/v2/account/1234"
            }
        }
    ]
}

List all available sub accounts of yours, including your own. Supports result pagination.

Request

GET /account

Query Parameters
Parameter Type Allowed types Description
include string language Includes object references in relationships section.
filter array * Filters by attributes
Response

Returns a collection of account instances.

Read authorized account

Get the account instance of the current authorized client.

Request

GET /me

Query Parameters
Parameter Type Allowed types Description
include string language Includes object references in relationships section.
Response

Returns a single account instance.

Read account

Get a single account instance by id.

Request

GET /account/{accountId}

Query Parameters
Parameter Type Allowed types Description
include string language Includes object references in relationships section.
Response

Returns a single account instance.

Create account

Create a new account instance. New accounts are automatically assigned with your client account as parent.

Request

POST /account

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created account instance.

Update account

Update a single account instance by account id.

Request

PATCH /account/{accountId}

Payload body

A data object with id, containing all changed attributes, excluding the read only attributes.

Response

Returns the updated account instance.

certificate

List certificate contracts

Sample response

{
    "data": [
        {
            "type": "certificate",
            "id": "H12345",
            "attributes": {
                "applicantDetails": null,
                "domains": [
                    "testdomain.de"
                ],
                "product": "23",
                "status": "active",
                "account": "12345",
                "createdAt": "2019-06-07T00:00:00+02:00",
                "terminationAt": null,
                "cancelationAt": null
            },
            "links": {
                "self": "https://api.cloudpit.io/v2/certificate/H12345"
            }
        }
    ]
}

List all available certificate contract instances related to sub-accounts of your client-account.

Request

GET /certificate

Query Parameters
Parameter Type Allowed attributes Description
filter string id,domains,product,status,account Filters by attributes
Response

Returns a collection of certificate instances.

Read certificate contract

Get a single certificate instance by id.

Request

GET /certificate/{certificateId}

Response

Returns a single certificate instance.

Create certificate contract

Create a new certificate contract instance.

Request

POST /certificate

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns HTTP 202 Accepted with no response body, as the creation will be handled asynchronously.

Update certificate contract

Update a single certificate contract instance.

Request

PATCH /certificate/{certificateId}

Payload body

A data object with id, containing all changed attributes, excluding the read only and create only attributes.

Response

Returns the updated certificate instance.

contractLog

List contractLogs

Sample response

{
  "data": [
    {
      "type": "contractLog",
      "id": "2",
      "attributes": {
        "account": "1",
        "contract": "H44459",
        "logType": "upgrade",
        "message": "Eine Nachricht, das Upgrade betreffend.",
        "cdata": {
            "reasonCode": null,
            "email": null,
            "domain": null
        },
        "createdAt": "2018-10-09T00:00:00+02:00"
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/contractLog/2"
      }
    }
  ]
}

List all contract logs for the current account or a specified subaccount. Supports result pagination.

Permission

Requires no permissions keys.

Request

GET /v3/contractLog

Query Parameters
Parameter Type Allowed types Description
filter array account, contract Filters by attribute
Response

Returns a collection of contractLog instances.

Read contractLog

Get a single contractLog instance by id.

Permission

Requires no permissions keys.

Request

GET /v3/contractLog/{logId}

Response

Returns a single contractLog instance.

domain

List domain contracts

Sample response

{
    "data": {
        "type": "domain",
        "id": "D12345",
        "attributes": {
            "name": "testdomain.de",
            "description": ".de-Domain",
            "status": "active",
            "account": "1",
            "webhosting": "H12345",
            "authInfoIncoming": "loremIpsum",
            "authInfoOutgoing": "loremIpsum",
            "authInfoOutgoingExpiration": "2019-10-09T00:00:00+02:00",
            "admin_c": null,
            "owner": null,
            "externalId": "4e5c2a06-b52f-11e9-a2a3-2a2ae2dbcce4",
            "created_at": "2018-10-09T00:00:00+02:00",
            "termination_at": "2019-10-09T00:00:00+02:00"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/domain/D12345"
        }
    }
}

List all available domain contract instances related to sub-accounts of your client-account.

Request

GET /domain

Query Parameters
Parameter Type Allowed types Description
filter string * Filters by attributes
Response

Returns a collection of domain instances.

Read domain contract

Get a single domain instance by id.

Request

GET /domain/{domainId}

Response

Returns a single domain instance.

Create domain contract

Create a new domain contract instance.

Request

POST /domain

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created domain instance.

Update domain contract

Update a single domain contract instance.

Request

PATCH /domain/{domainId}

Payload body

A data object with id, containing all changed attributes, excluding the read only and create only attributes.

Response

Returns the updated domain instance.

domain-status

Query domain status check

Sample response

{
    "data": {
        "type": "domain-status",
        "id": "testdomain.de",
        "attributes": {
            "zone": "de",
            "status": [
                "undelegated",
                "inactive"
            ]
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/domain-status/testdomain.de"
        }
    }
}

Get the domain availability status by domain name.

Request

GET /domain-status/{domain}

Response

Returns a single domain status instance.

language

List languages

Sample response

{
    "data": [
        {
            "type": "language",
            "id": "1",
            "attributes": {
                "isocode": "de_DE",
                "slug": "german",
                "name": "Deutschland (deutsch)"
            },
            "links": {
                "self": "https://api.cloudpit.io/v2/language/1"
            }
        },
        {
            "type": "language",
            "id": "2",
            "attributes": {
                "isocode": "en_GB",
                "slug": "english",
                "name": "United Kingdom (english)"
            },
            "links": {
                "self": "https://api.cloudpit.io/v2/language/2"
            }
        }
    ]
}

List all available languages.

Request

GET /language

Response

Returns a collection of language instances.

Read language

Get a single language instance by id.

Request

GET /language/{languageId}

Response

Returns a single language instance.

product

List products

Sample response

{
    "data": [{
         "type": "product",
         "id": "5",
         "attributes": {
             "name": "Webhosting XL",
              "meta": {
                  "externalId": 42
              }
         },
        "links": {
            "self": "https://api.cloudpit.io/v2/product/5"
        }
     }]
}

List all available product instances.

Request

GET /product

Query Parameters
Parameter Type Allowed types Description
filter string * Filters by attributes
Response

Returns a collection of product instances.

Read product

Get a single product instance by id.

Request

GET /product/{productId}

Response

Returns a single product_instance.

sso

List SSO tokens

Sample response

{
    "data": [{
        "type": "sso",
        "id": "45",
        "attributes": {
            "url": "https://cloudpit.io/?ssotoken=VNtimYDk9zJjoNRiMQWfg5ttE2Pgk6UYC7RlQ2mBQwyNgojvpjUE2xUlNcy950A2",
            "token": "VNtimYDk9zJjoNRiMQWfg5ttE2Pgk6UYC7RlQ2mBQwyNgojvpjUE2xUlNcy950A2",
            "account": "1",
            "account_login": "testAccount",
            "user": "1",
            "createdBy": "1",
            "valid_until": "2018-10-05T17:31:10+01:00",
            "options": {
                "location": "webhosting",
                "webhostingId": "H12345"
            },
            "created_at": "2018-10-05T17:26:10+01:00",
            "updated_at": "2018-10-05T17:26:10+01:00"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/sso/45"
        }
    }]
}

List all available sso tokens with sub-accounts of your client-account.

Request

GET /sso

Response

Returns a collection of SSO token instances.

Read SSO token

Get a single SSO token instance by id.

Request

GET /sso/{ssoId}

Response

Returns a single SSO token instance.

Create SSO token

Create a new SSO token instance. You can only create SSO tokens for sub-accounts of your client-account.

Request

POST /sso

Payload body

A data object with one of the following attributes you want to create the SSO token for:

Attribute Type Description
account string account id
account_login string login name of the related account
user string user id
options object/null (optional) Various settings for the generated token, you can see details in the object reference
Response

Returns the created SSO token instance.

Delete SSO token

Delete an existing SSO token by id. You don't need to delete expired instances yourself, as they automatically get deleted every time one is creating a new instance.

Request

DELETE /sso/{ssoId}

Payload body

No payload required

Response

Returns no response with HTTP 204 - No content.

webhosting

List webhosting contracts

Sample response

{
    "data": [{
        "type": "webhosting",
        "id": "H12345",
        "attributes": {
            "product": 4,
            "description": "WEB XL 2.0",
            "status": "active",
            "account": "1",
            "externalId": "4e5c2a06-b52f-11e9-a2a3-2a2ae2dbcce4",
            "created_at": "2018-10-09T00:00:00+02:00",
            "termination_at": "2019-11-08T00:00:00+01:00"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting/45"
        }
    }]
}

List all available webhosting contract instances related to sub-accounts of your client-account.

Request

GET /webhosting

Query Parameters
Parameter Type Allowed types Description
filter string * Filters by attributes
Response

Returns a collection of webhosting instances.

Read webhosting contract

Get a single webhosting instance by id.

Request

GET /webhosting/{webhostingId}

Response

Returns a single webhosting instance.

Create webhosting contract

Create a new webhosting contract instance.

Request

POST /webhosting

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created webhosting instance.

Update webhosting contract

Update a single webhosting contract instance.

Request

PATCH /webhosting/{webhostingId}

Payload body

A data object with id, containing all changed attributes, excluding the read only and create only attributes.

Response

Returns the updated webhosting instance.

Upgrade to another product

If you want to upgrade to another product, just update the product attribute to the new target product. Please note, only product upgrades are permitted. When upgrading to a lower product, the product resource will not be found.

webhosting-email

List mail addresses

Sample response

{
  "data": [
    {
      "type": "webhosting-email",
      "id": "44676+test@dogado.net",
      "attributes": {
        "password": null,
        "fowarding": {
          "enabled": false,
          "emails": []
        },
        "mailbox": {
          "enabled": true,
          "size": 2147483648,
          "usage": 4096
        },
        "autoresponder": {
          "enabled": false,
          "subject": "Re: <request_subject>",
          "message": null,
          "contentType": "text/html",
          "forwardMail": null,
          "endDate": null
        },
        "aliases": []
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/webhosting-email/44676+test@dogado.net"
      }
    }
  ]
}

List all mail addresses for an webhosting account.

Request

GET /v3/webhosting-email

Query Parameters
Parameter Type Allowed types Description
filter array webhosting, domain Filters by attributes (required)
Response

Returns a collection of email instances.

Read one email address

Output of an email instance selected in the URL.

Request

GET /v3/webhosting-email/44676+test@dogado.net

Response

Returns a single email instance.

webhosting-protectedDirectory

List protected directories

Sample response

{
    "data": {
        "type": "webhosting-protectedDirectory",
        "id": "12345+1",
        "attributes": {
            "directoryId": "1",
            "webhosting": "12345",
            "domain": "example.org",
            "directory": "/example.org/protected-directory",
            "description": "A protected directory"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting-protectedDirectory/12345+1"
        }
    }
}

List all available protected directory instances related to webhosting instances and a domain name.

Request

GET /webhosting-protectedDirectory

Query Parameters
Parameter Type Allowed types Description
filter string domain Filters by domain (required)
filter integer webhosting Filters by webhosting (required)
Response

Returns a collection of protected directory instances.

Read protected directory

Get a single protected directory instance by id.

Request

GET /webhosting-protectedDirectory/{webhosting}+{directoryId}

Response

Returns a single protected directory instance.

Create protected directory

Sample request

{
    "data": {
        "type": "webhosting-protectedDirectory",
        "attributes": {
            "webhosting": "12345",
            "domain": "example.org",
            "directory": "/example.org/protected-directory",
            "description": "A protected directory"
        }
    }
}

Create a new protected directory instance.

Request

POST /webhosting-protectedDirectory

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created protected directory instance.

Update protected directory

Sample request

{
    "data": {
        "type": "webhosting-protectedDirectory",
        "id": "12345+1",
        "attributes": {
            "domain": "example.org",
            "description": "A protected directory with changed description"
        }
    }
}

Update a single protected directory instance.

Request

PATCH /webhosting-protectedDirectory/{webhosting}+{directoryId}

Payload body

A data object with id, containing all changed attributes, excluding the read only and create only attributes.

Because of an error inside the used third party software, we have no clue which domain a directory is associated to. As a workaround, the domain you provide in the request body will be used to complete the resource in case you need the information in the response.

Response

Returns the updated protected directory instance.

Delete protected directory

Delete a protected directory instance.

Request

DELETE /webhosting-protectedDirectory/{webhosting}+{directoryId}

Payload body

No payload required.

Response

Returns no response with HTTP 204 - No content.

webhosting-protectedDirectory-user

List protected directory users

Sample response

{
    "data": {
        "type": "webhosting-protectedDirectory-user",
        "id": "12345+1+user1",
        "attributes": {
            "username": "user1",
            "webhosting": 12345,
            "directoryId": 1,
            "password": null
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting-protectedDirectory-user/12345+1+user1"
        }
    }
}

List all available protected directory user instances related to a webhosting and protected directory instance.

Request

GET /webhosting-protectedDirectory-user

Query Parameters
Parameter Type Allowed types Description
filter integer directoryId Filters by directoryId (required)
filter integer webhosting Filters by webhosting (required)
Response

Returns a collection of protected directory user instances.

Read protected directory user

Get a single protected directory user instance by id.

Request

GET /webhosting-protectedDirectory-user/{webhosting}+{directoryId}+{username}

Response

Returns a single protected directory user instance

Create protected directory user

Sample request

{
    "data": {
        "type": "webhosting-protectedDirectory-user",
        "attributes": {
            "username": "user1",
            "webhosting": 12345,
            "directoryId": 1,
            "password": "5up3r53cur3pa55w0rd!"
        }
    }
}

Create a new protected directory user instance.

Request

POST /webhosting-protectedDirectory-user

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created protected directory user instance

Update protected directory user

Sample request

{
    "data": {
        "type": "webhosting-protectedDirectory-user",
        "id": "12345+1+user1",
        "attributes": {
            "password": "5up3r53cur3pa55w0rd!"
        }
    }
}

Update a single protected directory user instance.

Request

PATCH /webhosting-protectedDirectory-user/{webhosting}+{directoryId}+{username}

Payload body

A data object with id, containing all changed attributes, excluding the read only and create only attributes.

Response

Returns the updated protected directory user instance

Delete protected directory user

Delete a protected directory user instance.

Request

DELETE /webhosting-protectedDirectory-user/{webhosting}+{directoryId}+{username}

Payload body

No payload required.

Response

Returns no response with HTTP 204 - No content.

webhosting-subdomain

List subdomains

Sample response

{
    "data": {
        "type": "webhosting-subdomain",
        "id": "12345+subdomain.example.org",
        "attributes": {
            "domain": "example.org",
            "subdomain": "subdomain",
            "webhosting": 12345,
            "documentRoot": "/subdomain.example.org/httpd",
            "status": "active"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting-subdomain/12345+subdomain.example.org"
        }
    }
}

List all available subdomain instances related to webhosting instances and one or more domain names.

Request

GET /webhosting-subdomain

Query Parameters
Parameter Type Allowed types Description
filter string domain Filters by domain (multiple, if comma separated) (required)
filter integer webhosting Filters by webhosting (required)
Response

Returns a collection of subdomain instances.

Read subdomain

Get a single subdomain instance by id.

Request

GET /webhosting-subdomain/{webhosting}+{subdomain}

Response

Returns a single subdomain instance.

Create subdomain

Sample request

{
    "data": {
        "type": "webhosting-subdomain",
        "attributes": {
            "domain": "example.org",
            "subdomain": "subdomain",
            "webhosting": 12345,
            "documentRoot": "/subdomain.example.org/httpd",
            "status": "active"
        }
    }
}

Create a new subdomain instance.

Request

POST /webhosting-subdomain

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created subdomain instance.

Update subdomain

Sample request

{
    "data": {
        "type": "webhosting-subdomain",
        "id": "12345+subdomain.example.org",
        "attributes": {
            "documentRoot": "/anotherFolder/",
            "status": "active"
        }
    }
}

Update a single subdomain instance.

Request

PATCH /webhosting-subdomain/{webhosting}+{subdomain}

Payload body

A data object with id, containing all changed attributes, excluding the read only and create only attributes.

Response

Returns the updated subdomain instance.

Delete subdomain

Delete a subdomain instance.

Request

DELETE /webhosting-subdomain/{webhosting}+{subdomain}

Payload body

No payload required.

Response

Returns no response with HTTP 204 - No content.

API Version 3

A reference for all existing API Version 3 endpoints and actions.

account

This is an API v3 route, it must be called with /v3/

List accounts

Sample response

{
  "data": {
    "type": "account",
    "id": "1000",
    "attributes": {
      "parent": "1",
      "accountType": "reseller",
      "active": true,
      "createdAt": "2019-07-30T12:17:14+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "user": {
        "data": [
          {
            "type": "user",
            "id": "1"
          },
          {
            "type": "user",
            "id": "2"
          }
        ],
        "links": {
          "self": "https://api.cloudpit.io/v3/account/1000/relationships/user",
          "related": "https://api.cloudpit.io/v3/account/1000/user"
        }
      }
    },
    "links": {
      "self": "https://api.cloudpit.io/v3/account/1000"
    }
  },
  "included": {
    "type": "user",
    "id": "1",
    "attributes": {
      "account": "1",
      "language": "1",
      "password": null,
      "email": "max.mustermann@example.org",
      "emailInvalid": false,
      "salutation": "m",
      "company": "Musterfirma",
      "firstname": "Max",
      "lastname": "Mustermann",
      "active": true,
      "primary": true,
      "createdAt": "2019-07-22T09:10:44+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "userlogin": {
        "links": {
          "self": "https://api.cloudpit.io/v3/user/1/relationships/userlogin",
          "related": "https://api.cloudpit.io/v3/user/1/userlogin"
        }
      }
    },
    "type": "user",
    "id": "2",
    "attributes": {
      "account": "1",
      "language": "1",
      "password": null,
      "email": "mccullough.chadd@example.org",
      "emailInvalid": false,
      "salutation": "f",
      "company": "Ruecker Inc",
      "firstname": "Angeline",
      "lastname": "Schneider",
      "active": true,
      "primary": true,
      "createdAt": "2019-07-30T12:17:14+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "userlogin": {
        "links": {
          "self": "https://api.cloudpit.io/v3/user/2/relationships/userlogin",
          "related": "https://api.cloudpit.io/v3/user/2/userlogin"
        }
      }
    }
  }
}

List all available accounts. Supports result pagination.

Request

GET /v3/account

Query Parameters
Parameter Type Allowed types Description
include string user Includes object references in relationships section.
filter array * Filters by attributes
Response

Returns a collection of account instances.

Read accounts

Get the account instance by id.

Request

GET /v3/account/{accountId}

Query Parameters
Parameter Type Allowed types Description
include string user Includes object references in relationships section.
Response

Returns a single account instance.

Get all account id related user instances.

Request

GET /v3/account/{accountId}/user

Response

Returns all related user instances of the given account id.

Create accounts

Create a new account instance.

Request

POST /account

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created account instance.

Update accounts

Update a single account instance by account id.

Request

PATCH /account/{accountId}

Payload body

A data object with id, containing all changed attributes, excluding the read only attributes.

Response

Returns the updated account instance.

Delete accounts

Deletes the account instance of the chosen id.

Request

DELETE /v3/account/{accountId}

Response

Returns no response with HTTP 204 - No content.

contract

List contracts

Sample response

{
  "data": [
    {
      "type": "contract",
      "id": "H12345",
      "attributes": {
        "ownerAccount": "1",
        "assigneeAccount": null,
        "assigneeLoginName": null,
        "contractType": "hosting",
        "name": "WEB S 2.0 v1",
        "product": 1,
        "contractStartAt": "2019-04-18T00:00:00+02:00",
        "contractTerminationAt": null,
        "contractCancelationAt": null,
        "inclusive": false,
        "dnsStatus": null,
        "price": 1.19,
        "vat": 19,
        "currency": "EUR",
        "billingInterval": 12,
        "serviceType": "plesk",
        "maturity": "12M",
        "children": [],
        "parent": null,
        "status": "active",
        "demoReference": null
      },
      "links": {
        "self": "http://api.cloudpit.io/v3/contract/H44638"
      }
    }
  ]
}

List all available contracts. Supports result pagination.

Request

GET /v3/contract

Query Parameters
Parameter Type Allowed types Description
filter array * Filters by attributes
sort array * Enables sorting by attribute
Response

Returns a collection of contract instances.

Read contract

Get a single contract instance by id.

Permission

Requires no permissions keys.

Request

GET /v3/contract/{contractId}

Response

Returns a single contract instance.

Create contract

Create a new contract instance.

Request

POST /contract

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns HTTP 201 Created with the created contract as response body.

Update contract

Terminate, cancel or assign contract.

Permission

Requires no permissions keys.

Request

PATCH /v3/contract/{contractId}

Payload body

A data object with id, containing all changed attributes, excluding the read only attributes.

Response

Returns the updated contract instance.

dns-record

This is an API v3 route, it must be called with /v3/

Show all records

Sample response

{
  "data":
    {
      "type": "dns-record",
      "id": "1",
      "attributes": {
        "name": "docs.dogado.net",
        "data": "195.34.83.173",
        "record-type": "A",
        "priority": null,
        "ttl": 600,
        "dns-zone": "dogado.net"
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/dns-record/1"
      }
    }
}

Get all DNS records for the given domain zones

Request

GET /dns-record

Query Parameters
Parameter Type Allowed types Description
filter array dns-zone Required: Filter all records by dns zone name
Response

Returns a collection of dns-record instances.

Read one record

Get one DNS record by it's id

Request

GET /dns-record/{record-id}

Payload body

A data object containing all attributes described in the object reference.

Response

Returns one dns-record instance.

dns-zone

This is an API v3 route, it must be called with /v3/

List DNS zones

Sample response

{
 "data":
    {
      "type": "dns-zone",
      "id": "1",
      "attributes": {
        "domainName": "dogado.net",
        "maintained": "manual",
        "primaryNameserver": "ns.primary-ns.net",
        "nameserver": [],
        "adminEmail": "hostmaster@dogado.de",
        "refresh": 28800,
        "retry": 7200,
        "expire": 604800,
        "minimum": 600,
        "ttl": 600,
        "message": null,
        "syncedAt": null,
        "createdAt": "2020-01-24T07:40:44+01:00",
        "updatedAt": "2020-01-24T07:40:45+01:00"
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/dns-zone/1"
      }
    }
}

List all available DNS zones.

Request

GET /v3/dns-zone

Response

Returns a collection of dns zone objects.

Read DNS zone

Get one DNS zone instance by id.

Request

GET /v3/dns-zone/{id}

Response

Returns a single DNS zone object.

Create DNS zone

Create a new DNS zone instance.

Request

POST /dns-zone

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns the created DNS zone object.

Update DNS zone

Update a single DNS zone instance by id.

Request

PATCH /dns-zone/{id}

Payload body

A data object with id, containing all changed attributes, excluding the read only attributes.

Response

Returns the updated DNS zone object.

Delete DNS zone

Deletes the DNS zone instance of the chosen id.

Request

DELETE /v3/dns-zone/{id}

Response

Returns no response with HTTP 204 - No content.

dnssec

This is an API v3 route, it must be called with /v3/

Get DNSSEC status

Get the DNSSEC status by it's domain id

Request

GET /dnssec/{domainId}

Response

Returns one dnssec instance.

Domain Id's

You can query all domain id's of your account by using the domain endpoint

domainSuggestion

This is an API v3 route, it must be called with /v3/

Show all records

Sample response

{
  "data": [
    {
      "type": "domainSuggestion",
      "id": "test-hal.de",
      "attributes": {
        "keyword": "test",
        "sld": "test-hal",
        "tld": "de",
        "decoded": "test-hal.de"
      },
      "links": {
        "self": "http://api.cloudpit.io/v3/domainSuggestion/test-hal.de"
      }
    }
  ]
}

A list of all generated domain suggestions, depending on the filtered keyword.

Request

GET /domainSuggestion

Query Parameters
Parameter Type Allowed types Description
filter array keyword Required: Generate suggestions for this specific keyword
checkDomainStatus boolean Return only domains which are free for registration
Response

Returns a collection of domainSuggestion instances.

user

This is an API v3 route it must be called with /v3/

List user

Sample response

{
  "data": {
    "type": "user",
    "id": "1",
    "attributes": {
      "account": "1",
      "language": "1",
      "password": null,
      "email": "max.mustermann@example.org",
      "emailInvalid": false,
      "salutation": "f",
      "company": "Musterfirma",
      "firstname": "Max",
      "lastname": "Mustermann",
      "active": true,
      "primary": true,
      "createdAt": "2019-07-30T12:17:14+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "user-login": {
        "data": [
          {
            "type": "user-login",
            "id": "admin"
          },
          {
            "type": "user-login",
            "id": "anahi.runolfsdottir"
          }
        ],
        "links": {
          "self": "https://api.cloudpit.io/v3/user/1/relationships/user-login",
          "related": "https://api.cloudpit.io/v3/user/1/user-login"
        }
      }
    },
    "links": {
      "self": "https://api.cloudpit.io/v3/user/1"
    }
  },
  "included": [
    {
      "type": "user-login",
      "id": "admin",
      "attributes": {
        "loginType": "primary",
        "user": "1",
        "createdAt": "2019-07-30T12:17:14+02:00",
        "updatedAt": "2019-07-30T12:17:14+02:00"
      },
      "relationships": {
        "user": {
          "links": {
            "self": "https://api.cloudpit.io/v3/user-login/admin/relationships/user",
            "related": "https://api.cloudpit.io/v3/user-login/admin/user"
          }
        }
      }
    },
    {
      "type": "user-login",
      "id": "anahi.runolfsdottir",
      "attributes": {
        "loginType": "secondary",
        "user": "1",
        "createdAt": "2019-07-30T12:17:18+02:00",
        "updatedAt": "2019-07-30T12:17:14+02:00"
      },
      "relationships": {
        "user": {
          "links": {
            "self": "https://api.cloudpit.io/v3/user-login/anahi.runolfsdottir/relationships/user",
            "related": "https://api.cloudpit.io/v3/user-login/anahi.runolfsdottir/user"
          }
        }
      }
    }
  ]
}

List all available users, including your own. Supports result pagination.

Request

GET /v3/user

Query Parameters
Parameter Type Allowed types Description
include string user-login Includes object references in relationships section.
filter array * Filters by attributes
Response

Returns a collection of user instances.

Read user

Get a user instance by id.

Request

GET /v3/user/{userId}

Query Parameters
Parameter Type Allowed types Description
include string user-login Includes object references in relationships section.
Response

Returns a single user instance.

Read releated user-login

Get the releated user-login instances of the given user id reference.

Request

GET /v3/user/{userId}/user-login

Response

Returns collection of user-login instances.

Create user

Create a new user instance.

Request

POST /user

Payload body

A data object containing all attributes described in the object reference. Only non-primary, additional users can be created via this route.

Response

Returns the created user instance.

Update user

Update a single user instance by user id.

Request

PATCH /user/{userId}

Payload body

A data object with id, containing all changed attributes, excluding the read only attributes.

Response

Returns the updated user instance.

Delete user

Deletes the user instance of the chosen id.

Request

DELETE /v3/user/{userId}

Response

Returns no response with HTTP 204 - No content.

user-login

This is an API v3 route, it must be called with /v3/

List User Login

Sample response

{
  "data": {
    "type": "user-login",
    "id": "loginname",
    "attributes": {
      "loginType": "primary",
      "user": "41",
      "createdAt": "2019-07-25T14:14:24+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "user": {
        "data": {
          "type": "user",
          "id": "1"
        },
        "links": {
          "self": "https://api.cloudpit.io/v3/user-login/loginname/relationships/user",
          "related": "https://api.cloudpit.io/v3/user-login/loginname/user"
        }
      }
    },
    "links": {
      "self": "https://api.cloudpit.io/v3/user-login/loginname"
    }
  },
  "included": [
    {
      "type": "user",
      "id": "1",
      "attributes": {
        "account": "1",
        "language": "1",
        "password": null,
        "email": "myrtie@example.org",
        "emailInvalid": false,
        "salutation": "f",
        "company": "Musterfirma",
        "firstname": "Myrtie",
        "lastname": "Heaney",
        "active": true,
        "primary": true,
        "createdAt": "2019-07-30T12:17:14+02:00",
        "updatedAt": "2019-07-30T12:17:14+02:00"
      },
      "relationships": {
        "user-login": {
          "links": {
            "self": "https://api.cloudpit.io/v3/user/1/relationships/user-login",
            "related": "https://api.cloudpit.io/v3/user/1/user-login"
          }
        }
      }
    }
  ]
}

List all available logins of a specific user. Supports result pagination.

Request

GET /v3/user-login

Query Parameters
Parameter Type Allowed types Description
include string user-login Includes object references in relationships section.
filter array * Filters by attributes
Response

Returns a collection of user login instances.

Read User Login

Get a user login instance.

Request

GET /v3/user-login/{userloginId}

Query Parameters
Parameter Type Allowed types Description
include string user Includes object references in relationships section.
Response

Returns a single user instance.

Read releated user (from user-login endpoint)

Get the related user instance of a specific account.

Request

GET /v3/user-login/{userloginId}/user

Response

Returns a single user instances.

Create User Login

Create the secondary login for a user. There can only be one secondary login for a user.

Request

POST /user-login

Payload body

A data object containing all attributes described in the object reference.

Response

Returns the created user login instance.

Update user login

Update the secondary login of a user. The primary login cannot be changed.

Request

PATCH /user-login/{userloginId}

Payload body

A data object with id, containing all changed attributes, excluding the read only attributes.

Response

Returns the updated user login instance.

Delete user login

Delete a secondary user login by id. Primary logins cannot be deleted.

Request

DELETE /v3/user-login/{userLoginId}

Response

Returns no response with HTTP 204 - No content.

webcard

List webcard contracts

Sample response

{
  "data": [
    {
      "type": "webcard",
      "id": "H12345",
      "attributes": {
        "ownerAccount": "1",
        "assigneeAccount": null,
        "assigneeLoginName": null,
        "contractType": "hosting",
        "name": "Webcard Business",
        "product": 1,
        "contractStartAt": "2019-04-18T00:00:00+02:00",
        "contractTerminationAt": null,
        "contractCancelationAt": null,
        "inclusive": false,
        "dnsStatus": null,
        "price": 1.19,
        "vat": 19,
        "currency": "EUR",
        "billingInterval": 12,
        "serviceType": "webcard",
        "maturity": "12M",
        "children": [],
        "parent": null,
        "status": "active",
        "demoReference": null
      },
      "links": {
        "self": "http://api.cloudpit.io/v3/contract/H44638"
      }
    }
  ]
}

List all available contracts. Supports result pagination.

Permission

Requires no permissions keys.

Request

GET /v3/webcard

Query Parameters
Parameter Type Allowed types Description
filter array * Filters by attributes
sort array * Enables sorting by attribute
Response

Returns a collection of contract instances.

Read webcard contract

Get a single contract instance by id.

Permission

Requires no permissions keys.

Request

GET /v3/webcard/{webcardId}

Response

Returns a single contract instance.

Create webcard contract

Create a new webcard contract instance.

Permission

Requires one of the permission keys create.vm, create.crmwh, create.backup, create.fit, create.o365, create.wh.

A reseller can only create webcard contracts for specific products. See product for allowed products.

Request

POST /webcard

Payload body

A data object containing all attributes described in the object reference, excluding the read only attributes.

Response

Returns HTTP 201 Created with the created webcard contract as response body.

Update webcard contract

Terminate, cancel or assign webcard contract.

Permission

Requires no permissions keys.

Request

PATCH /v3/webcard/{webcardId}

Payload body

A data object with id, containing all changed attributes, excluding the read only attributes.

Response

Returns the updated webcard instance.

webcard-basic

Create Webcard Basic

Sample payload

{
  "data": {
    "type": "webcard-basic",
    "attributes": {
      "subdomain": "john-doe",
      "customerData": {
        "firstname": "John",
        "lastname": "Doe",
        "company": "dogado GmbH",
        "street": "Antonio-Segni-Straße 11",
        "postcode": "44263",
        "city": "Dortmund",
        "country": "de",
        "phone": "+492312866200",
        "email": "info@dogado.de"
      }
    }
  }
}

Sample response

{
  "data": {
    "type": "webcard-basic",
    "id": "4ac4f2c2-f5e2-46fb-a8b3-2f5b9142a67a",
    "attributes": {
      "contract": null,
      "subdomain": "john-doe",
      "customerData": {
        "firstname": "John",
        "lastname": "Doe",
        "company": "dogado GmbH",
        "street": "Antonio-Segni-Straße 11",
        "postcode": "44263",
        "city": "Dortmund",
        "country": "de",
        "phone": "+492312866200",
        "email": "info@dogado.de"
      },
      "publishedAt": null,
      "unpublishedAt": null,
      "updatedAt": "2021-04-18T14:28:16+00:00",
      "createdAt": "2021-04-18T14:28:16+00:00"
    }
  }
}

Create a webcard basic instance.

Request

POST /v3/webcard-basic

Payload

The webcard-basic resource to create. It must contain a valid hostname validated subdomain. All customer data is optional.

Response

Returns the created webcard-basic instance.

Read Webcard Basic

Sample response

{
  "data": {
    "type": "webcard-basic",
    "id": "4ac4f2c2-f5e2-46fb-a8b3-2f5b9142a67a",
    "attributes": {
      "contract": "H12345",
      "subdomain": "john-doe",
      "customerData": {
        "firstname": "John",
        "lastname": "Doe",
        "company": "dogado GmbH",
        "street": "Antonio-Segni-Straße 11",
        "postcode": "44263",
        "city": "Dortmund",
        "country": "de",
        "phone": "+492312866200",
        "email": "info@dogado.de"
      },
      "publishedAt": "2021-04-18T14:28:16+00:00",
      "unpublishedAt": "2021-04-18T14:28:16+00:00",
      "updatedAt": "2021-04-18T14:28:16+00:00",
      "createdAt": "2021-04-18T14:28:16+00:00"
    }
  }
}

Read a webcard-basic or webcard plus instance by id. A "webcard plus" instance is a webcard basic instance which got upgraded to a plus contract.

Request

GET /v3/webcard-basic/{id}

Query Parameters
Parameter Type Description
id string The webcard-basic or plus UUID identifier to fetch.
Response

Returns the found webcard-basic or plus instance or HTTP 404 Not found.

Delete Webcard Basic

Delete a webcard-basic instance by id.

Request

DELETE /v3/webcard-basic/{id}

Query Parameters
Parameter Type Description
id string The webcard-basic UUID identifier to delete.
Response

HTTP 204 No content on success, or HTTP 404 Not found.

webcard-sso

Create Webcard SSO

Sample request

{
  "data": {
    "type": "webcard-sso",
    "attributes": {
      "contract": "H12345",
      "lifetime": 3600,
      "invalidateAfterFirstUse": false
    }
  }
}

Sample response

{
  "data": {
    "type": "webcard-sso",
    "id": "42",
    "attributes": {
      "contract": "H12345",
      "webcardBasic": null,
      "lifetime": 3600,
      "url": "https://webcard.local/sso?token=123456",
      "invalidateAfterFirstUse": false
    }
  }
}

Create an SSO Link for a Webcard Instance.

Request

POST /v3/webcard-sso

Payload

A webcard-sso resource with optional settings. Must contain either contract or webcardBasic reference.

Response

Returns a single webcard-sso instance.

Object Reference

Describes the structure of all available resource objects.

API Version 2

A reference for all existing API Version 2 resources.

account

sample object

{
    "data": {
        "type": "account",
        "id": "51486",
        "attributes": {
            "parent": 1,
            "login": "apiDocs",
            "email": "info@api.docs",
            "emailInvalid": false,
            "displayName": "testUser@CloudPit",
            "salutation": "m",
            "company": "ApiDocs GmbH",
            "firstname": "John",
            "lastname": "Doe",
            "language": "1",
            "password": null,
            "subReseller": null,
            "passwordEmailDisabled": false,
            "active": true,
            "created_at": "2018-10-05T16:47:48+01:00",
            "updated_at": "2018-10-05T16:47:48+01:00"
        },
        "relationships": {
            "language": {
                "links": {
                    "self": "https://api.cloudpit.io/v2/account/51486/relationships/language",
                    "related": "https://api.cloudpit.io/v2/account/51486/language"
                }
            },
            "parent": {
                "links": {
                    "self": "https://api.cloudpit.io/v2/account/51486/relationships/parent",
                    "related": "https://api.cloudpit.io/v2/account/51486/parent"
                }
            }
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/account/51486"
        }
    }
}

Id: the account id

Type: account

Attributes:

Name Type Description Characteristics Default
parent integer parent account id read only
login string aka username; must be between 6 and 64 characters long unique
email string account email address
emailInvalid boolean whether the current email address is not reachable and needs to be changed
displayName string/null The name shown in the upper right of the CloudPit
salutation string/null allowed values: m = male, f = female, d = diverse
company string/null
firstname string/null
lastname string/null
language integer id of the related language instance
password string/null see global password restrictions change only
subReseller string/null can be used to change the design of CloudPit for your resellers optional null
passwordEmailDisabled boolean whether the user gets a welcome email including his username and password optional false
active boolean whether the user can login into the CloudPit
created_at string/null atom timestamp of the account creation read only
updated_at string/null atom timestamp of the last account update read only

The following restrictions apply to all passwords:

certificate

sample object

{
    "data": {
        "type": "certificate",
        "id": "H12345",
        "attributes": {
            "applicantDetails": {
                "company": "dogado GmbH",
                "firstname": "John",
                "lastname": "Doe",
                "street": "Saarlandstr. 25",
                "postcode": "44139",
                "city": "Dortmund",
                "country": "de",
                "email": "john.doe@example.local"
            },
            "domains": [
                "testdomain.de"
            ],
            "product": "23",
            "status": "active",
            "account": "12345",
            "createdAt": "2019-06-07T00:00:00+02:00",
            "terminationAt": "2020-06-07T00:00:00+02:00",
            "cancelationAt": "2020-06-07T00:00:00+02:00"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/certificate/H12345"
        }
    }
}

Id: the certificate id

Type: certificate

Attributes:

Name Type Description Characteristics
applicantDetails array/null Required customer data for the certificate creation create only
domains array the domain names that the certificate represents read only, required for creation
product string certificate product id read only, required for creation
description string certificate product name read only
status string see status explanation below read only
account string account id relation create only
createdAt string atom timestamp of the certificate creation read only
terminationAt string/null atom timestamp of the termination (can not be in the past on requested terminations), can be set to null to remove a pending termination
cancelationAt string/null atom timestamp of the cancelation, can only be updated and will always return null update only
Available status

The following status values can not be set or updated.

Name Description
active
cancelled
terminated the contract has been terminated
termination_pending the termination is pending
Applicant details objects

The applicant details are required for the CSR record which will be generated to create a certificate.

Name Type Characteristics
company string/null
firstname string
lastname string
street string
postcode string
city string
country string Two letter ISO country code
email string

contractLog

sample object

{
  "data": [
    {
      "type": "contractLog",
      "id": "2",
      "attributes": {
        "account": "1",
        "contract": "H44459",
        "logType": "upgrade",
        "message": "Eine Nachricht, das Upgrade betreffend.",
        "cdata": {
            "reasonCode": null,
            "email": null,
            "domain": null
        },
        "createdAt": "2018-10-09T00:00:00+02:00"
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/contractLog/2"
      }
    }
  ]
}

Id: the contractLog id

Type: contractLog

Attributes:

Name Type Description
contract string/null the contract this log entry belongs to
account string a account id of the issuer
message string describing message for this entry
logType string type if the entry, either abuse or upgrade
cdata object additional information
cdata.reasonCode string/null in case of abuse one of the codes will be set 901, 902, 903
cdata.email string/null the abuse issuer domain
cdata.domain string/null the abuse issuer email
createdAt string date of contractLog creation

domain

sample object

{
    "data": {
        "type": "domain",
        "id": "D12345",
        "attributes": {
            "name": "testdomain.de",
            "description": ".de-Domain",
            "status": "active",
            "account": "1",
            "webhosting": "H12345",
            "authInfoIncoming": "loremIpsum",
            "authInfoOutgoing": "loremIpsum",
            "authInfoOutgoingExpiration": "2019-10-09T00:00:00+02:00",
            "admin_c": {
                "firstname": "John",
                "lastname": "Doe",
                "address": "Saarlandstr. 25",
                "postcode": "44139",
                "city": "Dortmund",
                "phone": "+4902312866200",
                "email": "info@dogado.de"
             },
            "owner": {
                "firstname": "John",
                "lastname": "Doe",
                "address": "Saarlandstr. 25",
                "postcode": "44139",
                "city": "Dortmund",
                "phone": "+4902312866200",
                "email": "info@dogado.de"
            },
            "externalId": "4e5c2a06-b52f-11e9-a2a3-2a2ae2dbcce4",
            "created_at": "2018-10-09T00:00:00+02:00",
            "termination_at": "2019-10-09T00:00:00+02:00"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/domain/D12345"
        }
    }
}

Id: the domain id

Type: domain

Attributes:

Name Type Description Characteristics
name string the domain name create only
description string description of the selected TLD read only
status string see status explanation below read only
account string account id relation
webhosting string webhosting id relation
authInfoIncoming string/null auth info code for incoming transfers. See the additional info below create only
authInfoOutgoing string/null auth info code for outgoing transfers. See the additional info below read only
authInfoOutgoingExpiration string/null expiration date of the given outgoing auth info code read only
admin_c array/null Required Admin C data for the domain creation create only
owner array/null Required owner data for the domain creation create only
externalId string/null optional custom identifier for external references (maximum length: 255 chars)
created_at string atom timestamp of the domain creation read only
termination_at string/null atom timestamp of the termination, can be set to null to remove a pending termination
Available status

The following status values can not be set or updated.

Name Description
active
expired the domain is terminated
cancelled
pending the domain provisioning is pending
pending_transfer domain transfer is pending
Admin-C and Owner objects

The Admin-C and Owner objects have the same structure and are only required for the domain creation.

Name Type
firstname string
lastname string
address string
postcode string
city string
phone string
email string
Incoming auth info code

The authInfoIncoming code can be set to initiate a domain transfer to dogado. Be advised that setting this attribute may result in a different set of possible errors.

Outgoing auth info code

The authInfoOutgoing code automatically gets created on domain termination. The given auth code is valid until a certain date, which is given in the authInfoOutgoingExpiration attribute. The auth code gets renewed automatically if the authInfoOutgoingExpiration date is reached and the domain termination date is in the future.

domain-status

sample object

{
    "data": {
        "type": "domain-status",
        "id": "testdomain.de",
        "attributes": {
            "zone": "de",
            "status": [
                "undelegated",
                "inactive"
            ]
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/domain-status/testdomain.de"
        }
    }
}

Id: the domain name with zone

Type: domain-status

Attributes:

Name Type Description Characteristics
zone string the domain zone read only
status string a list of matching status values (see possible status values below) read only
Available status

The status array can contain the following values:

Name Description
unknown Unknown status, usually resulting from an error or misconfiguration.
undelegated The domain is not present in DNS.
inactive Available for new registration.
pending TLD not yet in the root zone file.
disallowed Disallowed by the registry, ICANN, or other (wrong script, etc.).
claimed Claimed or reserved by some party (not available for new registration).
reserved Explicitly reserved by ICANN, the registry, or another party.
dpml Domains Protected Marks List, reserved for trademark holders.
invalid Domain technically invalid, e.g. too long or too short.
active Registered, but possibly available via the aftermarket.
parked Active and parked, possibly available via the aftermarket.
marketed Explicitly marketed as for sale via the aftermarket.
expiring An expiring domain. e.g. in the Redemption Grace Period, and possibly available via a backorder service.
deleting A expired domain pending removal from the registry. e.g. in the Pending Delete phase, and possibly available via a backorder service.
priced An aftermarket domain with an explicit price. e.g. via the BuyDomains service.
transferable An aftermarket domain available for fast-transfer. e.g. in the Afternic inventory.
premium Premium domain name for sale by the registry.
suffix A public suffix according to publicsuffix.org.
zone A zone (domain extension).
tld A top-level domain.

language

sample object

{
    "data": {
        "type": "language",
        "id": "1",
        "attributes": {
            "isocode": "de_DE",
            "slug": "german",
            "name": "Deutschland (deutsch)"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/language/1"
        }
    }
}

Id: the language id

Type: language

Attributes:

Name Type Description
isocode string the iso language code
slug string short name
name string

product

sample object

{
    "data": {
         "type": "product",
         "id": "5",
         "attributes": {
             "name": "Webhosting XL",
              "meta": {
                  "externalId": 42
              }
         },
        "links": {
            "self": "https://api.cloudpit.io/v2/product/5"
        }
     }
}

Id: the product id

Type: product

Attributes:

Name Type Description Characteristics
name string the product name read only
meta array contains optional meta data defined per product, can be an empty array read only

In case there are no defined products for your authenticated account, you MAY receive a warning in the global meta-section to get in touch with us.

sso

sample object

{
    "data": {
        "type": "sso",
        "id": "45",
        "attributes": {
            "url": "https://cloudpit.io/?ssotoken=VNtimYDk9zJjoNRiMQWfg5ttE2Pgk6UYC7RlQ2mBQwyNgojvpjUE2xUlNcy950A2",
            "token": "VNtimYDk9zJjoNRiMQWfg5ttE2Pgk6UYC7RlQ2mBQwyNgojvpjUE2xUlNcy950A2",
            "account": "1",
            "account_login": "testAccount",
            "createdBy": "1",
            "valid_until": "2018-10-05T17:31:10+01:00",
            "options": {
                "location": "webhosting",
                "webhostingId": "H12345"
            },
            "created_at": "2018-10-05T17:26:10+01:00",
            "updated_at": "2018-10-05T17:26:10+01:00"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/sso/45"
        }
    }
}

Id: the sso id

Type: sso

Attributes:

Name Type Description Characteristics
url string URL to login to the dashboard with the SSO token read only
token string the generated SSO token unique, read only
account integer the related account id create only
account_login string/null login name of the related account create only
user string the related user id create only
createdBy integer user id of the sso creator read only
valid_until string atom timestamp about the expiration of the token instance read only
options object/null (optional) list of settings for the generated SSO token create only
options.location enum the target page to which the user will be redirected after successfull login (see possible values below) create only
options.cloudServerId string if the location is set to 'cloudserver' the target instance id is required create only
options.webhostingId string if the location is set to 'webhosting' or 'email' the target contract id is required create only
options.contractId string if the location is set to 'webcard' the target contract id is required create only
options.domainId string if the location is set to 'domain' the target contract id is required create only
created_at string atom timestamp of the sso creation read only
updated_at string atom timestamp of the last sso update read only
Possible options.location values

The options.location field is limited to certain values. If the location is set, the user will be redirected to the set page if the login challenge was successfull.

Name Description
cloudserver Redirect to the cloudserver detail page
domain Redirect to the domain detail page
email Redirect to the webhosting email tab
webcard Redirect to the webcard detail page
webcard-list Redirect to the webcard overview page
webhosting Redirect to the webhosting detail page
wordpress-list Redirect to the wordpress overview page

An sso token is valid for 5 minutes. Expired tokens get deleted automatically when creating new ones.

webhosting

sample object

{
    "data": [{
        "type": "webhosting",
        "id": "H12345",
        "attributes": {
            "product": "1",
            "description": "WEB XL 2.0",
            "status": "active",
            "account": "1",
            "externalId": "4e5c2a06-b52f-11e9-a2a3-2a2ae2dbcce4",
            "created_at": "2018-10-09T00:00:00+02:00",
            "termination_at": "2019-11-08T00:00:00+01:00"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting/H12345"
        }
    }]
}

Id: the webhosting id

Type: webhosting

Attributes:

Name Type Description Characteristics
product string The webhosting product id
description string A description of the selected product read only
status string see status explanation below partly read only
account string/null the assigned account id
externalId string/null optional custom identifier for external references (maximum length: 255 chars)
created_at string atom timestamp of the webhosting creation read only
termination_at string/null atom timestamp of the termination, can be set to null to remove a pending termination
Available status

You can ONLY update the status to active or suspended. Other status values are not usable for update actions.

Name Description
active
cancelled
pending the domain provisioning is pending
suspended
terminated
termination_pending
upgrade_pending

webhosting-email

sample object

{
  "data":
    {
      "type": "webhosting-email",
      "id": "44676+test@dogado.net",
      "attributes": {
        "password": null,
        "fowarding": {
          "enabled": false,
          "emails": []
        },
        "mailbox": {
          "enabled": true,
          "size": 2147483648,
          "usage": 4096
        },
        "autoresponder": {
          "enabled": false,
          "subject": "Re: <request_subject>",
          "message": null,
          "contentType": "text/html",
          "forwardMail": null,
          "endDate": null
        },
        "aliases": []
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/webhosting-email/44676+test@dogado.net"
      }
    }
}

Id: compound Id of the webhosting Id and the mail address

Type: webhosting-email

Attributes:

Name Type Description Characteristics
password string/null password of email address create only
fowarding.enabled bool if forwarding is enabled
fowarding.emails array array of e-mail addresses to which mails mails are forwarded to.
mailbox.enabled bool if the mailbox is enabled
mailbox.size integer size of mailbox in bytes
mailbox.usage integer usage of Mailspace in bytes read only
autoresponder.enabled bool indicates whether the automatic reply is activated
autoresponder.subject string subject of the automatic reply
autoresponder.message string/null content of the automatic reply
autoresponder.contentType string Which content type should the automatic reply have. Allowed values are either text/plain or text/html
autoresponder.forwardMail string to which address the mail should be forwarded to
autoresponder.endDate string/null Time of the end of the autoresponder
aliases array further mail addresses for this account

webhosting-protectedDirectory

sample object

{
    "data": [{
        "type": "webhosting-protectedDirectory",
        "id": "12345+1",
        "attributes": {
            "directoryId": 1,
            "webhosting": 12345,
            "domain": "example.org",
            "directory": "/example.org/protected-directory",
            "description": "A protected directory"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting-protectedDirectory/12345+1"
        }
    }]
}

Id: + concatenated key containing the webhosting and directoryId

Type: webhosting-protectedDirectory

Attributes:

Name Type Description Characteristics
directoryId integer The internal numeric directory id read only
webhosting integer The id of the associated webhosting resource create only
domain string The domain name for which the directory will be protected create only
directory string The relative directory, starting from the document root of the associated domain create only
description string A describing text for this protection

A protected directory can only be created if the associated domain contains a physical webhosting. Therefore no protected directories can be set for deactivated or forwarded domains.

webhosting-protectedDirectory-user

sample object

{
    "data": [{
        "type": "webhosting-protectedDirectory-user",
        "id": "12345+1+user1",
        "attributes": {
            "username": "user1",
            "webhosting": 12345,
            "directoryId": 1,
            "password": null
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting-protectedDirectory-user/12345+1+user1"
        }
    }]
}

Id: + concatenated key containing the webhosting, directoryId and username

Type: webhosting-protectedDirectory-user

Attributes:

Name Type Description Characteristics
username string The username to be used for the login create only
webhosting integer The id of the associated webhosting resource create only
directoryId integer The internal numeric directory id create only
password string The password for this user create/update only

webhosting-subdomain

sample object

{
    "data": [{
        "type": "webhosting-subdomain",
        "id": "12345+subdomain.example.org",
        "attributes": {
            "domain": "example.org",
            "subdomain": "subdomain",
            "webhosting": 12345,
            "documentRoot": "/subdomain.example.org/httpd",
            "status": "active"
        },
        "links": {
            "self": "https://api.cloudpit.io/v2/webhosting-subdomain/12345+subdomain.example.org"
        }
    }]
}

Id: + concatenated key containing the webhosting and a fully qualified subdomain (subdomain.example.org)

Type: webhosting-subdomain

Attributes:

Name Type Description Characteristics
domain string The domain name this subdomain ist associated to create only
subdomain string The subdomain part of the fully qualified subdomain name create only
webhosting integer The webhosting the associated domain is associated to create only
documentRoot string The document root of the subdomain (leading and trailing slashes are optional)
status enum The status of the subdomain (see possible status below)
Possible status values

The status field is limited to the few status values listed below.

Name Description
active The subdomain can be accessed via browser
locked The subdomain can't be accessed via browser, but the webhosting will remain
inactive The subdomain can't be accessed via browser and no webhosting exists

API Version 3

A reference for all existing API Version 3 resources.

account

sample object

{
  "data": {
    "type": "account",
    "id": "1000",
    "attributes": {
      "parent": "1",
      "accountType": "reseller",
      "active": true,
      "createdAt": "2019-07-30T12:17:14+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "user": {
        "data": [
          {
            "type": "user",
            "id": "1"
          },
          {
            "type": "user",
            "id": "2"
          }
        ],
        "links": {
          "self": "https://api.cloudpit.io/v3/account/1000/relationships/user",
          "related": "https://api.cloudpit.io/v3/account/1000/user"
        }
      }
    },
    "links": {
      "self": "https://api.cloudpit.io/v3/account/1000"
    }
  },
  "included": {
    "type": "user",
    "id": "1",
    "attributes": {
      "account": "1",
      "language": "1",
      "password": null,
      "email": "max.mustermann@example.org",
      "emailInvalid": false,
      "salutation": "m",
      "company": "Musterfirma",
      "firstname": "Max",
      "lastname": "Mustermann",
      "active": true,
      "primary": true,
      "createdAt": "2019-07-22T09:10:44+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "userlogin": {
        "links": {
          "self": "https://api.cloudpit.io/v3/user/1/relationships/userlogin",
          "related": "https://api.cloudpit.io/v3/user/1/userlogin"
        }
      }
    },
    "type": "user",
    "id": "2",
    "attributes": {
      "account": "1",
      "language": "1",
      "password": null,
      "email": "mccullough.chadd@example.org",
      "emailInvalid": false,
      "salutation": "f",
      "company": "Ruecker Inc",
      "firstname": "Angeline",
      "lastname": "Schneider",
      "active": true,
      "primary": true,
      "createdAt": "2019-07-30T12:17:14+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "userlogin": {
        "links": {
          "self": "https://api.cloudpit.io/v3/user/2/relationships/userlogin",
          "related": "https://api.cloudpit.io/v3/user/2/userlogin"
        }
      }
    }
  }
}

Id: the account id

Type: account

Attributes:

Name Type Description Characteristics
parent string/null parent account id read only
accountType enum type of account (possible values: reseller, client) read only
active boolean whether the account users can login into the CloudPit
createdAt string/null atom timestamp of the account creation read only
updatedAt string/null atom timestamp of the last account update read only

contract

sample object

{
  "data": [
    {
      "type": "contract",
      "id": "H12345",
      "attributes": {
        "ownerAccount": "1",
        "assigneeAccount": null,
        "assigneeLoginName": null,
        "contractType": "hosting",
        "name": "WEB S 2.0 v1",
        "product": 1,
        "contractStartAt": "2019-04-18T00:00:00+02:00",
        "contractTerminationAt": null,
        "contractCancelationAt": null,
        "inclusive": false,
        "dnsStatus": null,
        "price": 1.19,
        "vat": 19,
        "currency": "EUR",
        "billingInterval": 12,
        "serviceType": "plesk",
        "maturity": "12M",
        "children": [],
        "parent": null,
        "status": "active",
        "demoReference": null
      },
      "links": {
        "self": "http://api.cloudpit.io/v3/contract/H44638"
      }
    }
  ]
}

Id: the contract id

Type: contract

Attributes:

Name Type Description Characteristics
ownerAccount string owner account of the contract read only
assigneeAccount string/null administrator/user of the contract
assigneeLoginName string/null login name of athe assigned account read only
contractType string type of contract read only
name string name of product read only
product integer crm product id create / read only
contractStartAt string/null date of contract start read only
contractTerminationAt string/null date of contract termination change only
contractCancelationAt string/null date of contract cancelation change only
inclusive boolean determines if this contract is an inclusive contract without any price read only
dnsStatus string/null external, manual, auto read only
price string/null price of product read only
vat float/null read only
currency string currency of the product price read only
billingInterval integer billing interval of product in month read only
serviceType string read only
maturity string read only
children array read only
parent string parent contract id change only
status string/null status of contract (active, termination_pending, ...) read only
demoReference string/null (optional) Reference id for webcard contract creation create only

dns-record

sample object

{
  "data":
    {
      "type": "dns-record",
      "id": "1",
      "attributes": {
        "name": "docs.dogado.net",
        "data": "195.34.83.173",
        "record-type": "A",
        "priority": null,
        "ttl": 600,
        "dns-zone": "dogado.net"
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/dns-record/1"
      }
    }
}

Id: the id of the record

Type: dns-record

Attributes:

Name Type Description Characteristics
name string name of the record read only
data string data of record read only
record-type enum type of record (A, AAAA, NS) read only
priority int/null priority of dns-record read only
ttl int/null time to live for record read only
dns-zone string Id of the related dns-zone read only

dns-zone

sample object

{
 "data":
    {
      "type": "dns-zone",
      "id": "1",
      "attributes": {
        "domainName": "dogado.net",
        "maintained": "manual",
        "primaryNameserver": "ns.primary-ns.net",
        "nameserver": [],
        "adminEmail": "hostmaster@dogado.de",
        "refresh": 28800,
        "retry": 7200,
        "expire": 604800,
        "minimum": 600,
        "ttl": 600,
        "message": null,
        "syncedAt": null,
        "createdAt": "2020-01-24T07:40:44+01:00",
        "updatedAt": "2020-01-24T07:40:45+01:00"
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/dns-zone/1"
      }
    }
}

Id: the id of the record

Type: dns-zone

Attributes:

Name Type Description Characteristics
domainName string name of domain create only
maintained enum maintained state of the record as enum string (automatic, manual, external)
primaryNameserver string primary nameserver for this DNS zone
nameserver array other nameservers for this dns zone
adminEmail string mail address of the responsible person for this DNS zone read only
refresh integer This value configures how often a name server should check it's primary server to see if there has been any updates to the zone read only
retry integer This is how long a name server should wait to retry an attempt to get fresh zone read only
expire integer (in seconds) time at which this record expires read only
minimum integer (in seconds) Time to live for purposes of negative caching. read only
ttl integer (in seconds) time to live for this record read only
message string/null needed for validation read only
syncedAt integer/null time of the last synchronization as atom timestring read only
createdAt string time of creation as atom timestring read only
updatedAt string/null time of update as atom timestring read only

dnssec-record

sample object

{
  "data":
    {
      "type": "dnssec",
      "id": "1",
      "attributes": {
        "domainName": "dogado.net",
        "status": "inactive"
      },
      "links": {
        "self": "https://api.cloudpit.io/v3/dnssec/1"
      }
    }
}

Id: the id of the record

Type: dnssec-record

Attributes:

Name Type Description Characteristics
domainname string domain name of the record read only
status string status of the record (possible values are: active, inactive, pending.activation, pending.deactivation) read only

domainSuggestion

sample object

{
    "data": {
      "type": "domainSuggestion",
      "id": "test-hal.de",
      "attributes": {
        "keyword": "test",
        "sld": "test-hal",
        "tld": "de",
        "decoded": "test-hal.de"
      },
      "links": {
        "self": "http://api.cloudpit.io/v3/domainSuggestion/test-hal.de"
      }
    }
}

Id: the domain name with zone

Type: domainSuggestion

Attributes:

Name Type Description Characteristics
keyword string The keyword this result was generated by read only
sld string The second level domain (everything except the tld part) read only
tld string The top level domain read only
decoded string The fully qualified, decoded domain name read only

user

sample object

{
  "data": {
    "type": "user",
    "id": "1",
    "attributes": {
      "account": "1",
      "language": "1",
      "password": null,
      "email": "max.mustermann@example.org",
      "emailInvalid": false,
      "salutation": "f",
      "company": "Musterfirma",
      "firstname": "Max",
      "lastname": "Mustermann",
      "active": true,
      "primary": true,
      "createdAt": "2019-07-30T12:17:14+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "user-login": {
        "data": [
          {
            "type": "user-login",
            "id": "admin"
          },
          {
            "type": "user-login",
            "id": "anahi.runolfsdottir"
          }
        ],
        "links": {
          "self": "https://api.cloudpit.io/v3/user/1/relationships/user-login",
          "related": "https://api.cloudpit.io/v3/user/1/user-login"
        }
      }
    },
    "links": {
      "self": "https://api.cloudpit.io/v3/user/1"
    }
  },
  "included": [
    {
      "type": "user-login",
      "id": "admin",
      "attributes": {
        "loginType": "primary",
        "user": "1",
        "createdAt": "2019-07-30T12:17:14+02:00",
        "updatedAt": "2019-07-30T12:17:14+02:00"
      },
      "relationships": {
        "user": {
          "links": {
            "self": "https://api.cloudpit.io/v3/user-login/admin/relationships/user",
            "related": "https://api.cloudpit.io/v3/user-login/admin/user"
          }
        }
      }
    },
    {
      "type": "user-login",
      "id": "anahi.runolfsdottir",
      "attributes": {
        "loginType": "secondary",
        "user": "1",
        "createdAt": "2019-07-30T12:17:18+02:00",
        "updatedAt": "2019-07-30T12:17:14+02:00"
      },
      "relationships": {
        "user": {
          "links": {
            "self": "https://api.cloudpit.io/v3/user-login/anahi.runolfsdottir/relationships/user",
            "related": "https://api.cloudpit.io/v3/user-login/anahi.runolfsdottir/user"
          }
        }
      }
    }
  ]
}

Id: the user id

Type: user

Attributes:

Name Type Description Characteristics
account string related account id read only
email string user email address
salutation string/null allowed values: m = male, f = female, d = diverse
company string/null
firstname string/null
lastname string/null
language string id of the related language instance
password string/null see global password restrictions create/change only
active boolean whether the user can login into the CloudPit
primary boolean whether the user instance is the primary instance for the related account. Can only be false if there already is a primary user for the given account.
createdAt string atom timestamp of the user creation read only
updatedAt string/null atom timestamp of the last user update read only

The following restrictions apply to all passwords:

user-login

sample object

{
  "data": {
    "type": "user-login",
    "id": "loginname",
    "attributes": {
      "loginType": "primary",
      "user": "41",
      "createdAt": "2019-07-25T14:14:24+02:00",
      "updatedAt": "2019-07-30T12:17:14+02:00"
    },
    "relationships": {
      "user": {
        "data": {
          "type": "user",
          "id": "1"
        },
        "links": {
          "self": "https://api.cloudpit.io/v3/user-login/loginname/relationships/user",
          "related": "https://api.cloudpit.io/v3/user-login/loginname/user"
        }
      }
    },
    "links": {
      "self": "https://api.cloudpit.io/v3/user-login/loginname"
    }
  },
  "included": [
    {
      "type": "user",
      "id": "1",
      "attributes": {
        "account": "1",
        "language": "1",
        "password": null,
        "email": "myrtie@example.org",
        "emailInvalid": false,
        "salutation": "f",
        "company": "Musterfirma",
        "firstname": "Myrtie",
        "lastname": "Heaney",
        "active": true,
        "primary": true,
        "createdAt": "2019-07-30T12:17:14+02:00",
        "updatedAt": "2019-07-30T12:17:14+02:00"
      },
      "relationships": {
        "user-login": {
          "links": {
            "self": "https://api.cloudpit.io/v3/user/1/relationships/user-login",
            "related": "https://api.cloudpit.io/v3/user/1/user-login"
          }
        }
      }
    }
  ]
}

Id: the login name (must be between 6 and 64 characters long)

Type: userlogin

Attributes:

Name Type Description Characteristics
user string the related user id read only
loginType string type of the login (primary/secondary) Only secondary logins can be created, changed or deleted. Primary logins are strictly connected to it's user instance. read only
createdAt string atom timestamp of the user login creation read only
updatedAt string/null atom timestamp of the user login update read only

webcard

sample object

{
  "data": [
    {
      "type": "webcard",
      "id": "H12345",
      "attributes": {
        "ownerAccount": "1",
        "assigneeAccount": null,
        "assigneeLoginName": null,
        "contractType": "hosting",
        "name": "Webcard Business",
        "product": 1,
        "contractStartAt": "2019-04-18T00:00:00+02:00",
        "contractTerminationAt": null,
        "contractCancelationAt": null,
        "inclusive": false,
        "dnsStatus": null,
        "price": 1.19,
        "vat": 19,
        "currency": "EUR",
        "billingInterval": 12,
        "serviceType": "webcard",
        "maturity": "12M",
        "children": [],
        "parent": null,
        "status": "active",
        "demoReference": null
      },
      "links": {
        "self": "http://api.cloudpit.io/v3/webcard/H44638"
      }
    }
  ]
}

Id: the contract id

Type: webcard

Attributes:

Name Type Description Characteristics
ownerAccount string owner account of the contract read only
assigneeAccount string/null administrator/user of the contract
assigneeLoginName string/null login name of athe assigned account read only
contractType string type of contract read only
name string name of product read only
product integer crm product id create / read only
contractStartAt string/null date of contract start read only
contractTerminationAt string/null date of contract termination change only
contractCancelationAt string/null date of contract cancelation change only
inclusive boolean determines if this contract is an inclusive contract without any price read only
dnsStatus string/null external, manual, auto read only
price string/null price of product read only
vat float/null read only
currency string currency of the product price read only
billingInterval integer billing interval of product in month read only
serviceType string read only
maturity string read only
children array read only
parent string parent contract id change only
status string/null status of contract (active, termination_pending, ...), see status explanation below partly read only
demoReference string/null (optional) Reference id for webcard contract creation create only
Available status

You can ONLY update the status to active or suspended. Other status values are not usable for update actions.

Name Description
active
cancelled
pending the domain provisioning is pending
suspended
terminated
termination_pending
upgrade_pending

webcard-basic

sample object

{
  "data": [
    {
      "type": "webcard-basic",
      "id": "4ac4f2c2-f5e2-46fb-a8b3-2f5b9142a67a",
      "attributes": {
        "contract": "H12345",
        "subdomain": "john-doe",
        "customerData": {
          "firstname": "John",
          "lastname": "Doe",
          "company": "dogado GmbH",
          "street": "Antonio-Segni-Straße 11",
          "postcode": "44263",
          "city": "Dortmund",
          "country": "de",
          "phone": "+492312866200",
          "email": "info@dogado.de"
        },
        "publishedAt": "2021-04-18T14:28:16+00:00",
        "unpublishedAt": "2021-04-18T14:28:16+00:00",
        "updatedAt": "2021-04-18T14:28:16+00:00",
        "createdAt": "2021-04-18T14:28:16+00:00"
      }
    }
  ]
}

Id: the webcard basic id

Type: webcard-basic

Attributes:

Name Type Description Characteristics
contract string/null the contract reference, in case it has been upgraded to plus, or null if it's a regular basic instance. read only
subdomain string the default subdomain under which the webcard should be created. Must be a valid hostname subdomain for creation. Allowed characters: a-z, 0-9, -.
customerData string/null optional customer data which will be used as prefill data in the editor
customerData.firstname string/null
customerData.lastname string/null
customerData.company string/null
customerData.street string/null
customerData.postcode string/null
customerData.city string/null
customerData.country string/null two letter ISO country code
customerData.phone string/null
customerData.email string/null
publishedAt string/null ATOM time string of the first publication. Will be null if it has never been published. read only
unpublishedAt string/null ATOM time string of the last moment when the customer unpublished the webcard. Will be null if it's currently not forcefully unpublished. read only
updatedAt string/null ATOM time string the webcard has last been edited. read only
createdAt string/null ATOM time string of the webcard creation. read only

webcard-sso

sample object

{
  "data": {
    "type": "webcard-sso",
    "id": "550e8400-e29b-11d4-a716-446655440000",
    "attributes": {
      "contract": "H12345",
      "webcardBasic": "550e8400-e29b-11d4-a716-446655440000",
      "lifetime": 3600,
      "url": "https://webcard.local/sso?token=123456",
      "invalidateAfterFirstUse": false
    }
  }
}

Id: a uuid

Type: webcard-sso

Attributes:

Name Type Description Characteristics
contract string/null webhosting contract id either contract or webcardBasic is required for creation
webcardBasic string/null webcard basic or plus UUID reference either contract or webcardBasic is required for creation
lifetime integer/null lifetime of the generated url read only
url string/null sso url read only
invalidateAfterFirstUse bool/null if the url can be called once

Errors

Errors are returned as a part of the response. See http://jsonapi.org/format/#errors for further details.

Sample error

{
    "errors": [
        {
            "status": "404",
            "code": "http_404",
            "title": "route not found"
        }
    ]
}

General Errors

Code HTTP Status Description
general_1000 500 a generic error with no specific handling
general_1001 400 the json payload is malformed
general_1004 401 Your request could not be authorized. Please check if your authentication credentials are correct and valid.
http_404 404 the requested route could not be found

Resource Errors

Code HTTP Status Description
resource_1000 404 the requested resource could not be found
resource_1001 403 the client has no access to the requested resource
resource_1002 422 at least one attribute cannot be changed
resource_1003 422 the given termination date is invalid
resource_1004 422 the provided resource id does not match the expected format (e.g concatenated ids)
resource_1005 422 a filter is missing
resource_1006 422 the resource does already exists
resource_1007 422 one of the attributes is invalid (details can be found inside the pointer)
resource_1008 422 this action is not allowed for this resource
resource_1014 423 the resource you want to access is currently locked

Validation Errors

Code HTTP Status Description
validation_1000 422 the document or attributes format is invalid
validation_1001 422 one of the attributes to change is read only and cannot be modified
validation_1002 422 the attribute dependency to another resource does not exist
validation_1003 422 the attribute value is unique and does already exist
validation_1004 422 the given password does not match all requirements (see messages in the meta part for further info)
validation_1005 422 the given password is not secure

Domain registrar errors

Code HTTP Status Description
domain_registrar_1000 503 the registrar service authentication failed
domain_registrar_1001 422 the requested domain TLD does not exist or is invalid
domain_registrar_1002 422 the postal code of one of the given handles is invalid.
domain_registrar_1003 422 the phone number of one of the given handles is invalid.

Domain status errors

Code HTTP Status Description
domain_status_1000 422 the given domain structure or TLD is invalid.