Skip to content

Subscriptions

A subscription is a product or service that has recurring charges, such as a monthly flat fee or charges based on usage. Subscriptions can also include one-time charges, such as activation fees. Every subscription must be associated with an account. At least one active account must exist before any subscriptions can be created.

For more information, see Subscriptions.

CRUD: Retrieve a subscription

Request

Path
idstringrequired

Object id

Query
fieldsstring

Object fields to return

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

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

X-Zuora-WSDL-Versionstring

Zuora WSDL version number.

Default:79
cURL
curl -i -X GET \
  'https://rest.zuora.com/v1/object/subscription/{id}?fields=string' \
  -H 'Accept-Encoding: string' \
  -H 'Authorization: string' \
  -H 'Content-Encoding: string' \
  -H 'X-Zuora-WSDL-Version: 79' \
  -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
AccountIdstring

This field can be updated when Status is Draft. The ID of a valid account ID.

AutoRenewboolean

This field can be updated when Status is Draft. Indicates if the subscription automatically renews at the end of the term. Values: true, false

CancelledDatestring, (date)

The date on which the subscription was canceled.

ContractAcceptanceDatestring, (date)

The date when the customer accepts the contract. This field can be updated when Status is Draft.

ContractEffectiveDatestring, (date)

The date when the contract takes effect. This field can be updated when Status is Draft. Note: This field is required in the subscribe call. If you set the value of this field to null and both the ServiceActivationDate and ContractAcceptanceDate fields are not required, the subscribe call still returns success, but the new subscription is in DRAFT status. To activate the subscription, you must set a valid date to this field.

CreatedByIdstring

The user ID of the person who created the subscription. Character limit: 32 Values: automatically generated

CreatedDatestring, (date-time)

The date the subscription was created. This value is the same as the OriginalCreatedDate value until the subscription is amended. Values: automatically generated

CreatorAccountIdstring

The account ID that created the subscription or the amended subscription. Character limit: 32 Values: automatically generated

CreatorInvoiceOwnerIdstring

The account ID that owns the invoices associated with the subscription or the amended subscription. Character limit: 32 Values: automatically generated

CurrentTerminteger, (int32)

The length of the period for the current subscription term. If TermType is set to TERMED, this field is required and must be greater than 0. If TermType is set to EVERGREEN, this value is ignored. Default is 0. Character limit: 20 Values: automatically generated

CurrentTermPeriodTypestring

The period type for the current subscription term. This field is used with the CurrentTerm field to specify the current subscription term. Values:

  • Month (default)
  • Year
  • Day
  • Week
ExternallyManagedBystring

An enum field on the Subscription object to indicate the name of a third-party store. This field is used to represent subscriptions created through third-party stores.

Enum:"Amazon""Apple""Google""Roku"
Idstring

Object identifier.

InitialTerminteger, (int32)

The length of the period for the first subscription term. This field can be updated when Status is Draft. Required: If TermType is Termed Character limit: 20 Values: any valid number. The default value is 0.

InitialTermPeriodTypestring

The period type for the first subscription term. Values:

  • Month (default)

  • Year

  • Day

  • Week Note:

  • This field can be updated when Status is Draft.

  • This field is used with the InitialTerm field to specify the initial subscription term.

InvoiceOwnerIdstring

This field can be updated when Status is Draft. A valid account ID.

IsInvoiceSeparateboolean

Determines if the subscription is invoiced separately. If TRUE, then all charges for this subscription are collected into the subscription's own invoice. Values: TRUE, FALSE (default)

IsLatestVersionboolean

Determines if the subscription is the latest version. If the value of this field is TRUE, the subscription is the latest version. Values: TRUE, FALSE (default)

Namestring

The unique identifier of the subscription. If you don't specify a value, then Zuora generates a name automatically. Whether auto-generated or manually specified, the subscription name must be unique. Otherwise an error will occur. Character limit: 100 Values: one of the following:

  • leave null to automatically generate
  • a string of 100 characters or fewer
Notesstring

Use this field to record comments about the subscription. Character limit: 500 Values: a string of 500 characters or fewer

OriginalCreatedDatestring, (date-time)

The date when the subscription was originally created. This value is the same as the CreatedDate value until the subscription is amended. Values: automatically generated

OriginalIdstring

The original ID of this subscription. Values: automatically generated

PaymentTermstring

The name of the payment term associated with the subscription. For example, Net 30. The payment term determines the due dates of invoices.

Note: This field is only available if you set the X-Zuora-WSDL-Version header parameter to 115 or later. The value of this field is null if you have the Flexible Billing Attributes feature disabled.

PreviousSubscriptionIdstring

The subscription ID immediately prior to the current subscription. Character limit: 32 Values: automatically generated

RenewalSettingstring

This field can be updated when Status is Draft. Specifies whether a termed subscription will remain termed or change to evergreen when it is renewed. Required: If TermType is Termed Values: RENEW_WITH_SPECIFIC_TERM (default), RENEW_TO_EVERGREEN

RenewalTerminteger, (int32)

The length of the period for the subscription renewal term. This field can be updated when Status is Draft. Required: If TermType is Termed. Character limit: 20 Values: one of the following:

  • leave null to default to 0
  • any number
RenewalTermPeriodTypestring

The period type for the subscription renewal term. Values:

  • Month (default)

  • Year

  • Day

  • Week Note:

  • This field is used with the RenewalTerm field to specify the subscription renewal term.

  • This field can be updated when Status is Draft.

Revisionstring

An auto-generated decimal value uniquely tagged with a subscription. The value always contains one decimal place, for example, the revision of a new subscription is 1.0. If a further version of the subscription is created, the Revision value will be increased by 1. Also, the Revision value is always incremental regardless of deletion of subscription versions. Note: To get this field, you must set the Zuora WSDL version to 107.0 or over in the X-Zuora-WSDL-Version header parameter.

ServiceActivationDatestring, (date)

The date when the subscription is activated. This field can be updated when Status is Draft.

Statusstring

The status of the subscription. Character limit: 18 Values: automatically generated Possible values: one of the following:

  • Draft
  • PendingActivation
  • PendingAcceptance
  • Active
  • Cancelled
  • Expired
  • Suspended (This value is in Limited Availability.)
SubscriptionBillToIdstring

The bill-to contact ID of the subscription.

Note: This field is only available if you set the X-Zuora-WSDL-Version header parameter to 121 or later. The value of this field is null if you have the Flexible Billing Attributes feature disabled.

SubscriptionBillToSnapshotIdstring

The snapshot ID of the subscription's bill-to contact. The snapshot ID will not change after the subscription version is created.

Note: This field is only available if you set the X-Zuora-WSDL-Version header parameter to 121 or later. The value of this field is null if you have the Flexible Billing Attributes feature disabled.

SubscriptionEndDatestring, (date)

The date when the subscription term ends, where the subscription ends at midnight the day before. For example, if the SubscriptionEndDate is 12/31/2016, the subscriptions ends at midnight (00:00:00 hours) on 12/30/2016. This date is the same as the term end date or the cancelation date, as appropriate. Character limit: 29 Values: automatically generated

SubscriptionStartDatestring, (date)

The date when the subscription term starts. This date is the same as the start date of the original term, which isn't necessarily the start date of the current or new term. Character limit: 29 Values: automatically generated

TermEndDatestring, (date)

This field can be updated when Status is Draft. The date when the subscription term ends. If the subscription is evergreen, the TermEndDate value is null or is the cancelation date, as appropriate. Character limit: 29 Values: automatically generated

TermStartDatestring, (date)

This field can be updated when Status is Draft. The date when the subscription term begins. If this is a renewal subscription, then this date is different from the subscription start date. Character limit: 29 Version notes: --

TermTypestring

This field can be updated when Status is Draft. Indicates if a subscription is termed or evergreen. Character limit: 9 Values: TERMED, EVERGREEN

UpdatedByIdstring

The ID of the user who last updated the subscription. Character limit: 32 **Values: **automatically generated

UpdatedDatestring, (date-time)

The date when the subscription was last updated. Character limit: 29 Values: automatically generated

Versioninteger, (int32)

The version number of the subscription. Values: automatically generated

lastBookingDatestring, (date)

The last booking date of the subscription object. This field is writable only when the subscription is newly created as a first version subscription. You can override the date value when creating a subscription through the Subscribe and Amend API or the subscription creation UI (non-Orders). Otherwise, the default value today is set per the user's timezone. The value of this field is as follows:

  • For a new subscription created by the Subscribe and Amend APIs, this field has the value of the subscription creation date.
  • For a subscription changed by an amendment, this field has the value of the amendment booking date.
  • For a subscription created or changed by an order, this field has the value of the order date.
Currencystring

The code of currency that is used for this subscription. If the currency is not selected, the default currency from the account will be used.

All subscriptions in the same order must use the same currency. The currency for a subscription cannot be changed.

Note: This field is available only if you have the Multiple Currencies feature enabled and set the X-Zuora-WSDL-Version header parameter to 137 or later.

CpqBundleJsonId__QTstring, <= 32 characters

The Bundle product structures from Zuora Quotes if you utilize Bundling in Salesforce. Do not change the value in this field.

OpportunityCloseDate__QTstring, (date)

The closing date of the Opportunity. This field is used in Zuora data sources to report on Subscription metrics. If the subscription originated from Zuora Quotes, the value is populated with the value from Zuora Quotes.

OpportunityName__QTstring, <= 100 characters

The unique identifier of the Opportunity. This field is used in Zuora data sources to report on Subscription metrics. If the subscription originated from Zuora Quotes, the value is populated with the value from Zuora Quotes.

QuoteBusinessType__QTstring, <= 32 characters

The specific identifier for the type of business transaction the Quote represents such as New, Upsell, Downsell, Renewal or Churn. This field is used in Zuora data sources to report on Subscription metrics. If the subscription originated from Zuora Quotes, the value is populated with the value from Zuora Quotes.

QuoteNumber__QTstring, <= 32 characters

The unique identifier of the Quote. This field is used in Zuora data sources to report on Subscription metrics. If the subscription originated from Zuora Quotes, the value is populated with the value from Zuora Quotes.

QuoteType__QTstring, <= 32 characters

The Quote type that represents the subscription lifecycle stage such as New, Amendment, Renew or Cancel. This field is used in Zuora data sources to report on Subscription metrics. If the subscription originated from Zuora Quotes, the value is populated with the value from Zuora Quotes.

IntegrationId__NSstring, <= 255 characters

ID of the corresponding object in NetSuite. Only available if you have installed the Zuora Connector for NetSuite.

IntegrationStatus__NSstring, <= 255 characters

Status of the subscription's synchronization with NetSuite. Only available if you have installed the Zuora Connector for NetSuite.

Project__NSstring, <= 255 characters

The NetSuite project that the subscription was created from. Only available if you have installed the Zuora Connector for NetSuite.

SalesOrder__NSstring, <= 255 characters

The NetSuite sales order than the subscription was created from. Only available if you have installed the Zuora Connector for NetSuite.

SyncDate__NSstring, <= 255 characters

Date when the subscription was synchronized with NetSuite. Only available if you have installed the Zuora Connector for NetSuite.

<property name>anyadditional property

Custom fields of the Subscription object. The name of each custom field has the form customField__c. Custom field names are case sensitive. See Manage Custom Fields for more information.

Response
{ "TermStartDate": "2018-05-10", "Id": "2c92c0fa6343984c0163498b71fe04be", "UpdatedDate": "2018-05-11T11:38:03.000+08:00", "Version": 1, "Revision": "1.0", "AutoRenew": false, "SubscriptionStartDate": "2018-05-10", "InitialTerm": 12, "InitialTermPeriodType": "Month", "AccountId": "2c92c0fa6343984c0163498b71a604b2", "IsInvoiceSeparate": false, "IsLatestVersion": false, "CurrentTermPeriodType": "Month", "CurrentTerm": 12, "RenewalTermPeriodType": "Month", "ContractEffectiveDate": "2018-05-10", "UpdatedById": "2c92c0f9631b0084016323ec8720683d", "ContractAcceptanceDate": "2018-05-10", "CreatedById": "2c92c0f9631b0084016323ec8720683d", "CreatedDate": "2018-05-10T18:14:25.000+08:00", "Name": "A-S00000177", "Status": "Expired", "ServiceActivationDate": "2018-05-10", "OriginalId": "2c92c0fa6343984c0163498b71fe04be", "RenewalTerm": 12, "TermEndDate": "2019-05-10", "TermType": "TERMED", "RenewalSetting": "RENEW_WITH_SPECIFIC_TERM", "OriginalCreatedDate": "2018-05-10T18:14:25.000+08:00", "SubscriptionEndDate": "2019-05-10" }