Upgrade a Subscription

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.

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.

  • The destination subscription provider identifer.

  • offerName string | null

    The name of the offer.

  • 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').

  • 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.

Responses

  • 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
      • 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
      • 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
      • 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.

  • Unauthorized

  • Forbidden

  • Conflict

    Hide response attributes Show response attributes object
    • The viewmodel for checking subscription conflict.

      Additional properties are NOT allowed.

      Hide portalSubscription attributes Show portalSubscription attributes object
      • name string | null Required

        The name of the subscription. This may be up to 255 characters.

      • quantity integer(int32) Required

        The quantity.

      • nextBillingFrequency object Required

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

        Additional properties are NOT allowed.

        Hide nextBillingFrequency attribute Show nextBillingFrequency attribute object
        • name string | null

          The name of the enumeration.

      • true if [automatic renew enabled]; otherwise, false.

      • Additional properties are NOT allowed.

        Hide autoRenewSettings attributes Show autoRenewSettings attributes object
        • term object Required

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

          Additional properties are NOT allowed.

          Hide term attribute Show term attribute object
          • name string | null

            The name of the enumeration.

        • billingFrequency object Required

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

          Additional properties are NOT allowed.

          Hide billingFrequency attribute Show billingFrequency attribute object
          • name string | null

            The name of the enumeration.

        • quantity integer(int32) | null Required

          The quantity

        • customTermEndDate string(date-time) | null

          The custom term end date

      • endDate string(date-time) Required

        End date of subscription.

      • status object Required

        Additional properties are NOT allowed.

        Hide status attribute Show status attribute object
        • name string | null

          The name of the enumeration.

    • The viewmodel for checking subscription conflict.

      Additional properties are NOT allowed.

      Hide providerSubscription attributes Show providerSubscription attributes object
      • name string | null Required

        The name of the subscription. This may be up to 255 characters.

      • quantity integer(int32) Required

        The quantity.

      • nextBillingFrequency object Required

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

        Additional properties are NOT allowed.

        Hide nextBillingFrequency attribute Show nextBillingFrequency attribute object
        • name string | null

          The name of the enumeration.

      • true if [automatic renew enabled]; otherwise, false.

      • Additional properties are NOT allowed.

        Hide autoRenewSettings attributes Show autoRenewSettings attributes object
        • term object Required

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

          Additional properties are NOT allowed.

          Hide term attribute Show term attribute object
          • name string | null

            The name of the enumeration.

        • billingFrequency object Required

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

          Additional properties are NOT allowed.

          Hide billingFrequency attribute Show billingFrequency attribute object
          • name string | null

            The name of the enumeration.

        • quantity integer(int32) | null Required

          The quantity

        • customTermEndDate string(date-time) | null

          The custom term end date

      • endDate string(date-time) Required

        End date of subscription.

      • status object Required

        Additional properties are NOT allowed.

        Hide status attribute Show status attribute object
        • name string | null

          The name of the enumeration.

    Hide response attributes Show response attributes object
    • The viewmodel for checking subscription conflict.

      Additional properties are NOT allowed.

      Hide portalSubscription attributes Show portalSubscription attributes object
      • name string | null Required

        The name of the subscription. This may be up to 255 characters.

      • quantity integer(int32) Required

        The quantity.

      • nextBillingFrequency object Required

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

        Additional properties are NOT allowed.

        Hide nextBillingFrequency attribute Show nextBillingFrequency attribute object
        • name string | null

          The name of the enumeration.

      • true if [automatic renew enabled]; otherwise, false.

      • Additional properties are NOT allowed.

        Hide autoRenewSettings attributes Show autoRenewSettings attributes object
        • term object Required

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

          Additional properties are NOT allowed.

          Hide term attribute Show term attribute object
          • name string | null

            The name of the enumeration.

        • billingFrequency object Required

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

          Additional properties are NOT allowed.

          Hide billingFrequency attribute Show billingFrequency attribute object
          • name string | null

            The name of the enumeration.

        • quantity integer(int32) | null Required

          The quantity

        • customTermEndDate string(date-time) | null

          The custom term end date

      • endDate string(date-time) Required

        End date of subscription.

      • status object Required

        Additional properties are NOT allowed.

        Hide status attribute Show status attribute object
        • name string | null

          The name of the enumeration.

    • The viewmodel for checking subscription conflict.

      Additional properties are NOT allowed.

      Hide providerSubscription attributes Show providerSubscription attributes object
      • name string | null Required

        The name of the subscription. This may be up to 255 characters.

      • quantity integer(int32) Required

        The quantity.

      • nextBillingFrequency object Required

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

        Additional properties are NOT allowed.

        Hide nextBillingFrequency attribute Show nextBillingFrequency attribute object
        • name string | null

          The name of the enumeration.

      • true if [automatic renew enabled]; otherwise, false.

      • Additional properties are NOT allowed.

        Hide autoRenewSettings attributes Show autoRenewSettings attributes object
        • term object Required

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

          Additional properties are NOT allowed.

          Hide term attribute Show term attribute object
          • name string | null

            The name of the enumeration.

        • billingFrequency object Required

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

          Additional properties are NOT allowed.

          Hide billingFrequency attribute Show billingFrequency attribute object
          • name string | null

            The name of the enumeration.

        • quantity integer(int32) | null Required

          The quantity

        • customTermEndDate string(date-time) | null

          The custom term end date

      • endDate string(date-time) Required

        End date of subscription.

      • status object Required

        Additional properties are NOT allowed.

        Hide status attribute Show status attribute object
        • name string | null

          The name of the enumeration.

    Hide response attributes Show response attributes object
    • The viewmodel for checking subscription conflict.

      Additional properties are NOT allowed.

      Hide portalSubscription attributes Show portalSubscription attributes object
      • name string | null Required

        The name of the subscription. This may be up to 255 characters.

      • quantity integer(int32) Required

        The quantity.

      • nextBillingFrequency object Required

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

        Additional properties are NOT allowed.

        Hide nextBillingFrequency attribute Show nextBillingFrequency attribute object
        • name string | null

          The name of the enumeration.

      • true if [automatic renew enabled]; otherwise, false.

      • Additional properties are NOT allowed.

        Hide autoRenewSettings attributes Show autoRenewSettings attributes object
        • term object Required

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

          Additional properties are NOT allowed.

          Hide term attribute Show term attribute object
          • name string | null

            The name of the enumeration.

        • billingFrequency object Required

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

          Additional properties are NOT allowed.

          Hide billingFrequency attribute Show billingFrequency attribute object
          • name string | null

            The name of the enumeration.

        • quantity integer(int32) | null Required

          The quantity

        • customTermEndDate string(date-time) | null

          The custom term end date

      • endDate string(date-time) Required

        End date of subscription.

      • status object Required

        Additional properties are NOT allowed.

        Hide status attribute Show status attribute object
        • name string | null

          The name of the enumeration.

    • The viewmodel for checking subscription conflict.

      Additional properties are NOT allowed.

      Hide providerSubscription attributes Show providerSubscription attributes object
      • name string | null Required

        The name of the subscription. This may be up to 255 characters.

      • quantity integer(int32) Required

        The quantity.

      • nextBillingFrequency object Required

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

        Additional properties are NOT allowed.

        Hide nextBillingFrequency attribute Show nextBillingFrequency attribute object
        • name string | null

          The name of the enumeration.

      • true if [automatic renew enabled]; otherwise, false.

      • Additional properties are NOT allowed.

        Hide autoRenewSettings attributes Show autoRenewSettings attributes object
        • term object Required

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

          Additional properties are NOT allowed.

          Hide term attribute Show term attribute object
          • name string | null

            The name of the enumeration.

        • billingFrequency object Required

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

          Additional properties are NOT allowed.

          Hide billingFrequency attribute Show billingFrequency attribute object
          • name string | null

            The name of the enumeration.

        • quantity integer(int32) | null Required

          The quantity

        • customTermEndDate string(date-time) | null

          The custom term end date

      • endDate string(date-time) Required

        End date of subscription.

      • status object Required

        Additional properties are NOT allowed.

        Hide status attribute Show status attribute object
        • name string | null

          The name of the enumeration.

  • 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
      • 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
      • 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
      • 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
      • 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
      • 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
      • 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 \
 -X POST https://app-cloudcockpitapi-prod-01.azurewebsites.net/v1/customers/{customerId}/subscriptions/{subscriptionId}/upgrade \
 -H "Content-Type: application/json" \
 -H "X-Tenant: portal.cloudcockpit.com" \
 -H "Authorization: Bearer eyJ0eXAiO..." \
 -H "X-Correlation-Id: string" \
 -d '{"destinationSubscriptionId":"string","destinationProviderSubscriptionId":"string","offerName":"string","offerId":"string","providerOfferId":"string","providerOfferIdWithAvailability":"string","imageUrl":"string","quantity":42,"termDuration":{},"billingFrequency":{},"transitionType":"string","transitionEvents":[{"name":"string","status":"string"}]}'
Request examples
# Headers
X-Tenant: portal.cloudcockpit.com
Authorization: Bearer eyJ0eXAiO...
X-Correlation-Id: string

# Payload
{
  "destinationSubscriptionId": "string",
  "destinationProviderSubscriptionId": "string",
  "offerName": "string",
  "offerId": "string",
  "providerOfferId": "string",
  "providerOfferIdWithAvailability": "string",
  "imageUrl": "string",
  "quantity": 42,
  "termDuration": {},
  "billingFrequency": {},
  "transitionType": "string",
  "transitionEvents": [
    {
      "name": "string",
      "status": "string"
    }
  ]
}
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)
{
  "portalSubscription": {
    "name": "string",
    "quantity": 42,
    "nextBillingFrequency": {
      "name": "string"
    },
    "autoRenewEnabled": true,
    "autoRenewSettings": {
      "term": {
        "name": "string"
      },
      "billingFrequency": {
        "name": "string"
      },
      "quantity": 42,
      "customTermEndDate": "2024-05-04T09:42:00+00:00"
    },
    "endDate": "2024-05-04T09:42:00+00:00",
    "status": {
      "name": "string"
    }
  },
  "providerSubscription": {
    "name": "string",
    "quantity": 42,
    "nextBillingFrequency": {
      "name": "string"
    },
    "autoRenewEnabled": true,
    "autoRenewSettings": {
      "term": {
        "name": "string"
      },
      "billingFrequency": {
        "name": "string"
      },
      "quantity": 42,
      "customTermEndDate": "2024-05-04T09:42:00+00:00"
    },
    "endDate": "2024-05-04T09:42:00+00:00",
    "status": {
      "name": "string"
    }
  }
}
Response examples (409)
{
  "portalSubscription": {
    "name": "string",
    "quantity": 42,
    "nextBillingFrequency": {
      "name": "string"
    },
    "autoRenewEnabled": true,
    "autoRenewSettings": {
      "term": {
        "name": "string"
      },
      "billingFrequency": {
        "name": "string"
      },
      "quantity": 42,
      "customTermEndDate": "2024-05-04T09:42:00+00:00"
    },
    "endDate": "2024-05-04T09:42:00+00:00",
    "status": {
      "name": "string"
    }
  },
  "providerSubscription": {
    "name": "string",
    "quantity": 42,
    "nextBillingFrequency": {
      "name": "string"
    },
    "autoRenewEnabled": true,
    "autoRenewSettings": {
      "term": {
        "name": "string"
      },
      "billingFrequency": {
        "name": "string"
      },
      "quantity": 42,
      "customTermEndDate": "2024-05-04T09:42:00+00:00"
    },
    "endDate": "2024-05-04T09:42:00+00:00",
    "status": {
      "name": "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"
      ]
    }
  ]
}