/api/v2/shared-hosting/{accountId}/email-accounts Create an email account on a cPanel-backed shared-hosting account.
Get accountId from GET /api/v2/shared-hosting data[].id.
Send localPart and domain; do not send email, username, address, or a full email address.
If the caller gives hello@example.com, split it into localPart: "hello" and domain: "example.com".
The domain must belong to the hosting account.
Passwords must be 8-128 characters, include uppercase, lowercase, and a number, and be strong enough to pass guessability checks; weak passwords return password_too_weak.
Omit quotaMb to use the HostUp default of 32768 MB (32 GB).
If this returns account_not_eligible_cpanel, use the control panel SSO link manually or contact support to migrate the account to a newer cPanel-backed plan.
write:hostingconsole:services
Authenticate with an API key in the Authorization: Bearer <token> header.
accountId string required
Example: acct_01hxa3b4c5d6e7f8g9h0j1k2m3 Public shared-hosting account ID. Get it from GET /api/v2/shared-hosting data[].id. Do not invent this value; use the exact ID returned by the referenced API response.
Authorization Bearer <token> Accept application/json Content-Type application/json localPart string required
· Example: hello Local part of the email address only, for example hello in hello@example.com. Do not send username, address, or include @domain.
domain string required
· Example: example.com Domain hosted on this shared-hosting account.
password string required
· Example: YOUR_EMAIL_ACCOUNT_PASSWORD Email account password. Must include uppercase, lowercase, and a number, and must be strong enough to avoid password_too_weak.
quotaMb number · min: 0 · max: 1048576
· Example: 1024 Email account storage quota in megabytes. Omit for the default 32768 MB.
id string required
· Example: mail_01hxa3b4c5d6e7f8g9h0j1k2m3 email string required
· Example: hello@example.com domain string required
· Example: example.com quota object required quota.usedGb number · nullable required
· Example: 0 Nullable: may be null when not applicable.
quota.limitGb number · nullable required
· Example: 1 Nullable: may be null when not applicable.
quota.usagePercent number · nullable required
· Example: 0 Nullable: may be null when not applicable.
quota.exceeded boolean required
· Example: false type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object Retry-After seconds plus X-RateLimit-* headers. 10 fields type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object https://cloud.hostup.se/api/v2/shared-hosting/{accountId}/email-accounts curl -X POST "https://cloud.hostup.se/api/v2/shared-hosting/acct_01hxa3b4c5d6e7f8g9h0j1k2m3/email-accounts" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"localPart": "hello",
"domain": "example.com",
"password": "YOUR_EMAIL_ACCOUNT_PASSWORD",
"quotaMb": 1024
}' {
"id": "mail_01hxa3b4c5d6e7f8g9h0j1k2m3",
"email": "hello@example.com",
"domain": "example.com",
"quota": {
"usedGb": 0,
"limitGb": 1,
"usagePercent": 0,
"exceeded": false
}
} {
"localPart": "hello",
"domain": "example.com",
"password": "YOUR_EMAIL_ACCOUNT_PASSWORD",
"quotaMb": 1024
}