Retrieve offers to retain customers who want to cancel services.

Provide alternative offers when a customer expresses a desire to cancel a service, such as web hosting, to retain them. This may include adjusted billing periods or other benefits based on the customer's reason for cancellation.

Web Hosting Services Hosting Accounts

Context

Where to get IDs / values

Path Parameters

accountId integer · min: 1 required Example: 20000

Unique account identifier

Query Parameters

reason string · enum required · Example: Too expensive
Moving to different provider
Too expensive

Headers

Accept Example
Content-Type Example

Responses

200
data object required
data.accountDetails object required
data.accountDetails.billingCycle string required · Example: Annually
data.accountDetails.billingCycleKey string required · Example: a
data.accountDetails.domain string required · Example: example.com
data.accountDetails.productName string required · Example: Start (cpanel)
data.accountDetails.total integer required · Example: 708
data.offers array<object> required · Example: [{"type":"klarna","title":"Pay in installments","titleSv":"Delbetala fakturan","descrip...
data.offers[].data object required
data.offers[].data.availableCycles array<object> · Example: [{"id":"m","name":"Monthly","price":79,"isCurrent":false,"monthlyEquivalent":79},{"id":...
data.offers[].data.availableCycles[].id string required · Example: m
data.offers[].data.availableCycles[].isCurrent boolean required · Example: false
data.offers[].data.availableCycles[].monthlyEquivalent integer required · Example: 79
data.offers[].data.availableCycles[].name string required · Example: Monthly
data.offers[].data.availableCycles[].price integer required · Example: 79
data.offers[].data.currentCycle string · Example: a
data.offers[].data.currentCycleName string · Example: Annually
data.offers[].data.currentCycleNameSv string · Example: Årsvis
data.offers[].data.currentPrice integer · Example: 708
data.offers[].data.features array<object> · Example: [{"icon":"shield","title":"A hacked site sells nothing","titleSv":"En hackad sajt sälje...
data.offers[].data.features[].description string required · Example: We run Ryzen, NVMe and LiteSpeed for maximum speed. But while others stop there, we als...
data.offers[].data.features[].descriptionSv string required · Example: Självklart kör vi Ryzen, NVMe och LiteSpeed för maximal hastighet. Men medan andra stan...
data.offers[].data.features[].icon string · enum required · Example: shield
shield
target
zap
data.offers[].data.features[].title string required · Example: A hacked site sells nothing
data.offers[].data.features[].titleSv string required · Example: En hackad sajt säljer inget
data.offers[].data.installmentAmount integer · Example: 177
data.offers[].data.installments integer · Example: 4
data.offers[].data.pendingInvoiceId string · Example: 48489
data.offers[].data.totalAmount integer · Example: 708
data.offers[].description string required · Example: Split your 708 kr invoice into 4 interest-free payments
data.offers[].descriptionSv string required · Example: Dela upp fakturan på 708 kr i 4 räntefria delbetalningar
data.offers[].title string required · Example: Pay in installments
data.offers[].titleSv string required · Example: Delbetala fakturan
data.offers[].type string · enum required · Example: klarna
billing_switch
klarna
value_props
data.originalReason string · enum required · Example: Too expensive
Moving to different provider
Too expensive
data.reason string · enum required · Example: too_expensive
different_provider
too_expensive
requestId string required · Example: 2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba

Unique request identifier (UUID).

success boolean required · Example: true

True for successful responses.

timestamp string required · Example: 2026-02-10T00:00:00.000Z

ISO 8601 timestamp (UTC).

GET https://cloud.hostup.se/api/hosting/{accountId}/save-offers
For AI assistants
cURL
curl -X GET "https://cloud.hostup.se/api/hosting/20000/save-offers?reason=Too%20expensive" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json"
Response
{
  "success": true,
  "timestamp": "2026-02-10T00:00:00.000Z",
  "requestId": "2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba",
  "data": {
    "reason": "too_expensive",
    "originalReason": "Too expensive",
    "offers": [
      {
        "type": "klarna",
        "title": "Pay in installments",
        "titleSv": "Delbetala fakturan",
        "description": "Split your 708 kr invoice into 4 interest-free payments",
        "descriptionSv": "Dela upp fakturan på 708 kr i 4 räntefria delbetalningar",
        "data": {
          "totalAmount": 708,
          "installmentAmount": 177,
          "installments": 4,
          "pendingInvoiceId": "48489"
        }
      }
    ],
    "accountDetails": {
      "domain": "example.com",
      "productName": "Start (cpanel)",
      "billingCycle": "Annually",
      "billingCycleKey": "a",
      "total": 708
    }
  }
}