/api/v2/shared-hosting Return shared-hosting accounts with domains, billing, resource limits, control-panel metadata, and pagination.
API-key callers need read:services for this collection; read:hosting alone is not sufficient for the current account-wide service inventory path.
Use account IDs from this endpoint for shared-hosting actions and detail lookups.
read:services
Authenticate with an API key in the Authorization: Bearer <token> header.
limit integer · min: 1 · max: 100 · default: 20 Maximum shared-hosting accounts to return in this page.
cursor string Opaque cursor from nextCursor for the next page.
include string · enum
· Example: billingCycleOptions Repeatable include selector. Use include=billingCycleOptions to attach cycle-change options to each account. Use include=domains to hydrate domains with the customer-facing cPanel main/addon/parked domain summary; subdomains are omitted. For the full typed inventory, including subdomains, call GET /api/v2/shared-hosting/{accountId}/domains. Without it, domains contains only the primary domain from the account record.
billingCycleOptions domains Authorization Bearer <token> Accept application/json data array<object> data[].id string required
· Example: acct_01hxa3b4c5d6e7f8g9h0j1k2m3 data[].name string required
· Example: example.com Customer-facing account name. Defaults to the primary domain when no custom name is set.
data[].primaryDomain string · nullable required
· Example: example.com Nullable: may be null when not applicable.
data[].domains array<string> required
· Example: ["example.com"] Domains known on this account. List responses normally include the primary domain only.
data[].customName string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].serviceStatus string · enum required
· Example: active active pending suspended cancelled terminated expired fraud unknown data[].billing object required data[].billing.amount number required
· Example: 99 data[].billing.currencyCode string required
· Example: SEK data[].billing.billingCycle string · nullable · enum required
· Example: annually Nullable: may be null when not applicable.
monthly quarterly semiannually annually biennially triennially free data[].createdAt string · nullable required
· Example: 2026-04-27T12:34:56.000Z Nullable: may be null when not applicable.
data[].nextDueAt string · nullable required
· Example: 2026-05-27T12:00:00.000Z Nullable: may be null when not applicable.
data[].expiresAt string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].pinned boolean required
· Example: false data[].resources object · nullable required Nullable: may be null when not applicable.
data[].controlPanel object required data[].controlPanel.type string · enum required
· Example: cpanel cpanel data[].controlPanel.supportsWhm boolean
· Example: true Only present when the account supports WHM access.
data[].billingCycleState object | null required data[].billingCycleState.billingCycleOptions array<object> required data[].billingCycleState.billingCycleOptions[].billingCycle string · enum required
· Example: annually monthly quarterly semiannually annually biennially triennially free data[].billingCycleState.billingCycleOptions[].amount number required
· Example: 1188 data[].billingCycleState.billingCycleOptions[].initialAmount number
· Example: 149 Present only when the first payment differs from the recurring amount.
data[].billingCycleState.billingCycleOptions[].currencyCode string required
· Example: SEK data[].billingCycleState.billingCycleOptions[].isCurrent boolean required
· Example: true data[].billingCycleState.billingCycleOptions[].savingsPercent number · nullable required
· Example: null Nullable: may be null when not applicable.
data[].billingCycleState.actions object required data[].billingCycleState.actions.canSwitchCycle object required data[].billingCycleState.actions.canSwitchCycle.allowed boolean required
· Example: true data[].billingCycleState.actions.canSwitchCycle.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].billingCycleState.actions.canSwitchCycle.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].actions object | null required Null on list responses. Detail responses include lifecycle and control-panel action gates.
data[].actions.canRenew object required data[].actions.canRenew.allowed boolean required
· Example: true data[].actions.canRenew.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].actions.canRenew.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].actions.canChangeBillingCycle object required data[].actions.canChangeBillingCycle.allowed boolean required
· Example: true data[].actions.canChangeBillingCycle.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].actions.canChangeBillingCycle.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].actions.canPause object required data[].actions.canPause.allowed boolean required
· Example: true data[].actions.canPause.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].actions.canPause.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].actions.canUpgrade object required data[].actions.canUpgrade.allowed boolean required
· Example: true data[].actions.canUpgrade.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].actions.canUpgrade.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].actions.canCancel object required data[].actions.canCancel.allowed boolean required
· Example: true data[].actions.canCancel.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].actions.canCancel.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].actions.canAddStorage object required data[].actions.canAddStorage.allowed boolean required
· Example: true data[].actions.canAddStorage.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].actions.canAddStorage.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].actions.canSso object required data[].actions.canSso.allowed boolean required
· Example: true data[].actions.canSso.reason string · nullable required
· Example: null Nullable: may be null when not applicable.
data[].actions.canSso.code string · nullable
· Example: pending_order Machine-readable reason code when an action is blocked.
data[].tags array<string> required hasMore boolean
· Example: false nextCursor string · nullable
· Example: null 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 curl -X GET "https://cloud.hostup.se/api/v2/shared-hosting" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" {
"data": [
{
"id": "acct_01hxa3b4c5d6e7f8g9h0j1k2m3",
"name": "example.com",
"primaryDomain": "example.com",
"domains": [
"example.com"
],
"customName": "Main hosting account",
"serviceStatus": "active",
"billing": {
"amount": 1188,
"currencyCode": "SEK",
"billingCycle": "annually"
},
"createdAt": "2026-04-27T12:34:56.000Z",
"nextDueAt": "2026-05-27T12:00:00.000Z",
"expiresAt": "2026-06-27T12:00:00.000Z",
"pinned": false,
"resources": {
"storageGb": 100,
"memoryGb": 4,
"cpuPercent": 800,
"diskLimitGb": 100
},
"controlPanel": {
"type": "cpanel"
},
"billingCycleState": {
"billingCycleOptions": [
{
"billingCycle": "annually",
"amount": 1188,
"currencyCode": "SEK",
"isCurrent": true,
"savingsPercent": 34
}
],
"actions": {
"canSwitchCycle": {
"allowed": false,
"reason": "No alternative billing cycles are available for this account."
}
}
},
"actions": null,
"tags": []
}
],
"hasMore": false,
"nextCursor": null
}