Skip to content

Amendments

You can use amendments to modify subscriptions. However, Zuora recommends you to use the Create an order operation to do so.

Retrieve an amendment

Request

Retrieves detailed information about the specified subscription amendment.

Path
amendment-keystringrequired

Can be the amendment ID or the amendment code.

Headers
Accept-Encodingstring

Include the Accept-Encoding: gzip header to compress responses as a gzipped file. It can significantly reduce the bandwidth required for a response.

If specified, Zuora automatically compresses responses that contain over 1000 bytes of data, and the response contains a Content-Encoding header with the compression algorithm so that your client can decompress it.

Content-Encodingstring

Include the Content-Encoding: gzip header to compress a request. With this header specified, you should upload a gzipped file for the request payload instead of sending the JSON payload.

Authorizationstring

The value is in the Bearer {token} format where {token} is a valid OAuth token generated by calling Create an OAuth token.

Zuora-Track-Idstring, <= 64 characters

A custom identifier for tracing the API call. If you set a value for this header, Zuora returns the same value in the response headers. This header enables you to associate your system process identifiers with Zuora API calls, to assist with troubleshooting in the event of an issue.

The value of this field must use the US-ASCII character set and must not include any of the following characters: colon (:), semicolon (;), double quote ("), and quote (').

Zuora-Entity-Idsstring

An entity ID. If you have Zuora Multi-entity enabled and the OAuth token is valid for more than one entity, you must use this header to specify which entity to perform the operation in. If the OAuth token is only valid for a single entity, or you do not have Zuora Multi-entity enabled, you do not need to set this header.

cURL
curl -i -X GET \
  'https://rest.zuora.com/v1/amendments/{amendment-key}' \
  -H 'Accept-Encoding: string' \
  -H 'Authorization: string' \
  -H 'Content-Encoding: string' \
  -H 'Zuora-Entity-Ids: string' \
  -H 'Zuora-Track-Id: string'

Responses

Headers
Content-Encodingstring

This header is returned if you specify the Accept-Encoding: gzip request header and the response contains over 1000 bytes of data.

Note that only the following MIME types support gzipped responses:

  • application/json
  • application/xml
  • text/html
  • text/csv
  • text/plain
RateLimit-Limitstring

The request limit quota for the time window closest to exhaustion. See rate limits for more information.

RateLimit-Remainingnumber

The number of requests remaining in the time window closest to quota exhaustion. See rate limits for more information.

RateLimit-Resetnumber

The number of seconds until the quota resets for the time window closest to quota exhaustion. See rate limits for more information.

Zuora-Request-Idstring, = 36 characters

The Zuora internal identifier of the API call. You cannot control the value of this header.

Zuora-Track-Idstring, <= 64 characters

A custom identifier for tracing the API call. If you specified a tracing identifier in the request headers, Zuora returns the same tracing identifier. Otherwise, Zuora does not set this header.

Bodyapplication/json
autoRenewboolean

Determines whether the subscription is automatically renewed, or whether it expires at the end of the term and needs to be manually renewed.

baseRatePlanIdstring

The rate plan ID on which changes are made. Only the Update or Remove amendment returns a base rate plan ID.

baseSubscriptionIdstring

The ID of the subscription based on which the amendment is created.

bookingDatestring, (date)

The date when the amendment is signed. This field is to standardize the booking date information to increase audit ability and traceability of data between Zuora Billing and Zuora Revenue. It is mapped as the booking date for a sale order line in Zuora Revenue.

codestring

The amendment code.

contractEffectiveDatestring, (date)

The date when the amendment becomes effective for billing purposes, as yyyy-mm-dd.

currentTerminteger, (int64)

The length of the period for the current subscription term.

currentTermPeriodTypestring

The period type for the current subscription term. Possible values are:

  • Month
  • Year
  • Day
  • Week
customerAcceptanceDatestring, (date)

The date when the customer accepts the amendment changes to the subscription, as yyyy-mm-dd.

descriptionstring

Description of the amendment.

destinationAccountIdstring

The ID of the account that the subscription is being transferred to.

destinationInvoiceOwnerIdstring

The ID of the invoice that the subscription is being transferred to.

effectiveDatestring, (date)

The date when the amendment changes take effective.

effectivePolicystring

Effective Policy for the subscription. Possible values are:

  • EffectiveImmediately

  • EffectiveEndOfBillingPeriod

  • SpecificDate

The value depends on the following conditions:

  • If the rate plan change (from old to new) is an upgrade, the effective policy is EffectiveImmediately by default.
  • If the rate plan change (from old to new) is a downgrade, the effective policy is EffectiveEndOfBillingPeriod by default.
  • Otherwise, the effective policy is SpecificDate by default.

Note: This feature is in the Early Adopter phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early adopter program, submit a request at Zuora Global Support.

idstring

The amendment ID.

namestring

The name of the amendment.

newRatePlanIdstring

The ID of the rate plan charge on which amendment is made. Only the Add or Update amendment returns a new rate plan ID.

newSubscriptionIdstring

The ID of the subscription that the amendment changes.

renewalSettingstring

Specifies whether a termed subscription will remain termed or change to evergreen when it is renewed. Possible values are:

  • RENEW_WITH_SPECIFIC_TERM
  • RENEW_TO_EVERGREEN
renewalTerminteger, (int64)

The term of renewal for the amended subscription.

renewalTermPeriodTypestring

The period type for the subscription renewal term. Possible values are:

  • Month
  • Year
  • Day
  • Week
resumeDatestring, (date)

The date when the subscription resumption takes effect, as yyyy-mm-dd.

Note: This feature is in Limited Availability. If you wish to have access to the feature, submit a request at Zuora Global Support.

serviceActivationDatestring, (date)

The date when service is activated, as yyyy-mm-dd.

specificUpdateDatestring, (date)

The date when the Update Product amendment takes effect. Only for the Update Product amendments if there is already a future-dated Update Product amendment on the subscription.

statusstring

The status of the amendment. Possible values are:

  • Draft
  • PendingActivation
  • PendingAcceptance
  • Completed
subTypestring

Sub type for the subscription.

Possible values are:

  • Upgrade

  • Downgrade

  • Crossgrade

  • PlanChanged

This field shows the sub type you choose for your change plan amendment.

However, if you do not set this field, the field will be automatically generated by the system according to the following rules:

When the old and new rate plans are within the same Grading catalog group:

  • If the grade of new plan is greater than that of the old plan, this is an "Upgrade".
  • If the grade of new plan is less than that of the old plan, this is a "Downgrade".
  • If the grade of new plan equals that of the old plan, this is a "Crossgrade".

When the old and new rate plans are not in the same Grading catalog group, or either has no group, this is "PlanChanged".

Note: This feature is in the Early Adopter phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early adopter program, submit a request at Zuora Global Support.

successboolean

Returns true if the request was processed successfully.

suspendDatestring, (date)

The date when the subscription suspension takes effect, as yyyy-mm-dd.

Note: This feature is in Limited Availability. If you wish to have access to the feature, submit a request at Zuora Global Support.

termStartDatestring, (date)

The date when the new terms and conditions take effect.

termTypestring

Indicates if the subscription is TERMED or EVERGREEN.

typestring

Type of the amendment. Possible values are:

  • Cancellation
  • NewProduct
  • OwnerTransfer
  • RemoveProduct
  • Renewal
  • UpdateProduct
  • TermsAndConditions
  • ChangePlan - Note that this feature is in the Early Adopter phase. We are actively soliciting feedback from a small set of early adopters before releasing it as generally available. If you want to join this early adopter program, submit a request at Zuora Global Support.
Response
{ "success": true, "id": "402896a9529c100a01529c30e26a0018", "code": "A-AM00000002", "name": "testAmendment", "type": "TermsAndConditions", "description": "just for test", "status": "Completed", "contractEffectiveDate": "2016-02-01", "serviceActivationDate": "2016-02-01", "customerAcceptanceDate": "2016-02-01", "effectiveDate": "2016-02-01", "newSubscriptionId": "402896a9529c100a01529c311930001d", "baseSubscriptionId": "402896a9529c100a01529c2f2cc30010", "termType": "TERMED", "currentTerm": 2, "currentTermPeriodType": "Month", "termStartDate": "2015-12-31", "renewalSetting": "RENEW_WITH_SPECIFIC_TERM", "renewalTerm": 1, "renewalTermPeriodType": "Month", "autoRenew": false, "specificUpdateDate": null, "newRatePlanId": null, "baseRatePlanId": null, "destinationAccountId": "402896a9529bc3dc01529bcba7120023", "destinationInvoiceOwnerId": "402896a9529bc3dc01529bcba7120023", "subType": "Upgrade", "effectivePolicy": "EffectiveImmediately" }