Upgrade a Subscription

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://developer.cloudcockpit.com/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "CloudCockpit MCP server": {
    "url": "https://developer.cloudcockpit.com/mcp"
  }
}

Close
POST /v1/customers/{customerId}/subscriptions/{subscriptionId}/upgrade

Upgrades the specified subscription. This process is asynchronous, therefore it will start executing after the request is submitted and may take some time. When an equivalent upgrade (same destination, offer, quantity, billing frequency and term) was already sent to the provider and is not confirmed yet, the request is answered with a 409 whose body has code = "similar_request_unconfirmed". Send it again with confirmEquivalentUpgrade = true to proceed anyway.

Headers

  • X-Tenant string Required

    The domain used to access the portal.

  • Authorization string Required

    JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"

    Default value is Bearer eyJ0eXAiO....

  • X-Correlation-Id string(uuid)

    This header is optional and by setting it you can correlate the audit logs made by this request.

Path parameters

  • customerId string(uuid) Required

    GUID Unique identifier for the customer. The subscription must belong to this customer, otherwise this request will fail.

  • subscriptionId string(uuid) Required

    GUID Unique identifier for the subscription.

application/json

Body

The subscription transition info to upgrade the existent subscription.

  • destinationSubscriptionId string(uuid) | null

    The destination subscription identifier.

  • destinationProviderSubscriptionId string | null

    The destination subscription provider identifer.

  • offerName string | null

    The name of the offer.

  • offerDescription string | null

    The offer description.

  • offerId string(uuid)

    The name of the offer.

  • providerOfferId string | null Required

    The provider offer identifier.

  • providerOfferIdWithAvailability string | null Required

    The provider offer identifier.

  • imageUrl string | null

    The offer image URL.

  • quantity integer(int32) Required

    The quantity.

  • termDuration object Required

    The term duration for this entity. Possible values: NoTerm, OneMonth, OneYear, ThreeYears or FiveYears

    Additional properties are NOT allowed.

  • billingFrequency object Required

    The billing frequency for this entity. Possible values: OneTime, Monthly, Annual, Triennial or None

    Additional properties are NOT allowed.

  • transitionType string | null Required

    The type of transition ('transition_only','transition_with_license_transfer').

  • confirmEquivalentUpgrade boolean

    Set to true to send the upgrade even though an equivalent upgrade was sent to the provider and is not confirmed yet. When false, such an upgrade is answered with a 409 (code similar_request_unconfirmed) listing the earlier request.

  • transitionEvents array[object] | null

    A list with the events related to a transition.

    Hide transitionEvents attributes Show transitionEvents attributes object
    • name string | null

      The trasition event name.

    • status string | null

      The trasition event status.

  • cheapestPrice object

    Additional properties are NOT allowed.

    Hide cheapestPrice attribute Show cheapestPrice attribute object
    • currency object

      Additional properties are NOT allowed.

  • subscriptionEligibilities array[object] | null

    Subscription eligibilities for this transition.

    Hide subscriptionEligibilities attributes Show subscriptionEligibilities attributes object
    • isEligible boolean
    • subscriptionId string | null
    • subscriptionFriendlyName string | null
    • subscriptionTermDuration string | null
    • subscriptionBillingCycle string | null
    • quantity integer(int32)

Responses

  • 202

    Accepted

  • Bad Request

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

  • 401

    Unauthorized

  • 403

    Forbidden

  • Conflict

    Hide response attributes Show response attributes object
    • code string | null

      Identifies the kind of conflict. Always Application.Common.Models.SimilarRequestUnconfirmedViewModel.ConflictCode.

    • requests array[object] | null

      The unconfirmed requests that are equivalent to the one being sent.

      Hide requests attributes Show requests attributes object

      An unconfirmed request that is equivalent to the one being sent.

      • id string(uuid)

        The id of the order or subscription of the earlier request.

      • kind string | null

        The kind of request: order or upgrade.

      • createdDate string(date-time)

        When the earlier request was created (UTC).

      • status string | null

        The status name of the earlier request, for example pending_confirmation.

      • quantity integer(int32) | null

        The quantity of the earlier request.

      • offerName string | null

        The name of the offer of the earlier request.

    Hide response attributes Show response attributes object
    • code string | null

      Identifies the kind of conflict. Always Application.Common.Models.SimilarRequestUnconfirmedViewModel.ConflictCode.

    • requests array[object] | null

      The unconfirmed requests that are equivalent to the one being sent.

      Hide requests attributes Show requests attributes object

      An unconfirmed request that is equivalent to the one being sent.

      • id string(uuid)

        The id of the order or subscription of the earlier request.

      • kind string | null

        The kind of request: order or upgrade.

      • createdDate string(date-time)

        When the earlier request was created (UTC).

      • status string | null

        The status name of the earlier request, for example pending_confirmation.

      • quantity integer(int32) | null

        The quantity of the earlier request.

      • offerName string | null

        The name of the offer of the earlier request.

    Hide response attributes Show response attributes object
    • code string | null

      Identifies the kind of conflict. Always Application.Common.Models.SimilarRequestUnconfirmedViewModel.ConflictCode.

    • requests array[object] | null

      The unconfirmed requests that are equivalent to the one being sent.

      Hide requests attributes Show requests attributes object

      An unconfirmed request that is equivalent to the one being sent.

      • id string(uuid)

        The id of the order or subscription of the earlier request.

      • kind string | null

        The kind of request: order or upgrade.

      • createdDate string(date-time)

        When the earlier request was created (UTC).

      • status string | null

        The status name of the earlier request, for example pending_confirmation.

      • quantity integer(int32) | null

        The quantity of the earlier request.

      • offerName string | null

        The name of the offer of the earlier request.

  • Not Found

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

  • Internal Server Error

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

    Hide response attributes Show response attributes object
    • statusCode integer(int32)

      The HTTP status code that represents a specific error scenario.

    • type string | null

      The type of error that occurred.

    • description string | null

      Describes the error scenario that occurred.

    • correlationId string | null

      The correlationId of the request that originated the error.

    • errors array[object] | null

      A list containing the detail of the errors that occurred in this error scenario.

      Hide errors attributes Show errors attributes object

      This class is used to represent the details of an error and specifies the name of the property and the description of each of the errors associated with that property.

      • propertyName string | null

        The name of the property involved in the error.

      • description array[string] | null

        A description of each error associated with the given property.

POST /v1/customers/{customerId}/subscriptions/{subscriptionId}/upgrade
curl \
 --request POST 'https://api.cloudcockpit.com/v1/customers/{customerId}/subscriptions/{subscriptionId}/upgrade' \
 --header "Content-Type: application/json" \
 --header "X-Tenant: portal.cloudcockpit.com" \
 --header "Authorization: Bearer eyJ0eXAiO..." \
 --header "X-Correlation-Id: string" \
 --data '{
  "destinationSubscriptionId": "string",
  "destinationProviderSubscriptionId": "string",
  "offerName": "string",
  "offerDescription": "string",
  "offerId": "string",
  "providerOfferId": "string",
  "providerOfferIdWithAvailability": "string",
  "imageUrl": "string",
  "quantity": 42,
  "termDuration": {},
  "billingFrequency": {},
  "transitionType": "string",
  "confirmEquivalentUpgrade": true,
  "transitionEvents": [
    {
      "name": "string",
      "status": "string"
    }
  ],
  "cheapestPrice": {
    "currency": {}
  },
  "subscriptionEligibilities": [
    {
      "isEligible": true,
      "subscriptionId": "string",
      "subscriptionFriendlyName": "string",
      "subscriptionTermDuration": "string",
      "subscriptionBillingCycle": "string",
      "quantity": 42
    }
  ]
}'
Request examples
# Headers
X-Tenant: portal.cloudcockpit.com
Authorization: Bearer eyJ0eXAiO...
X-Correlation-Id: string

# Payload
{
  "destinationSubscriptionId": "string",
  "destinationProviderSubscriptionId": "string",
  "offerName": "string",
  "offerDescription": "string",
  "offerId": "string",
  "providerOfferId": "string",
  "providerOfferIdWithAvailability": "string",
  "imageUrl": "string",
  "quantity": 42,
  "termDuration": {},
  "billingFrequency": {},
  "transitionType": "string",
  "confirmEquivalentUpgrade": true,
  "transitionEvents": [
    {
      "name": "string",
      "status": "string"
    }
  ],
  "cheapestPrice": {
    "currency": {}
  },
  "subscriptionEligibilities": [
    {
      "isEligible": true,
      "subscriptionId": "string",
      "subscriptionFriendlyName": "string",
      "subscriptionTermDuration": "string",
      "subscriptionBillingCycle": "string",
      "quantity": 42
    }
  ]
}
Response examples (400)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (400)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (409)
{
  "code": "string",
  "requests": [
    {
      "id": "string",
      "kind": "string",
      "createdDate": "2026-05-04T09:42:00Z",
      "status": "string",
      "quantity": 42,
      "offerName": "string"
    }
  ]
}
Response examples (409)
{
  "code": "string",
  "requests": [
    {
      "id": "string",
      "kind": "string",
      "createdDate": "2026-05-04T09:42:00Z",
      "status": "string",
      "quantity": 42,
      "offerName": "string"
    }
  ]
}
Response examples (404)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (404)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (500)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}
Response examples (500)
{
  "statusCode": 42,
  "type": "string",
  "description": "string",
  "correlationId": "string",
  "errors": [
    {
      "propertyName": "string",
      "description": [
        "string"
      ]
    }
  ]
}