Contents

Change Subscription Metadata

Update the SKU, display name, and description associated with a subscription, without affecting the subscription’s billing or its service.

URL

POST https://api.storekit.itunes.apple.com/advancedCommerce/v1/subscription/changeMetadata/{transactionId}

Sandbox URL

POST https://api.storekit-sandbox.itunes.apple.com/advancedCommerce/v1/subscription/changeMetadata/{transactionId}

Path Parameters

NameTypeDescription
transactionId Requiredstring

The transaction identifier of the auto-renewable subscription to get changes to its metadata. Use the subscription’s original transaction ID or any subsequent transaction ID of a transaction related to the subscription.

Response Codes

StatusReasonTypeDescription
200OK
Content-Type: application/json
SubscriptionChangeMetadataResponse

Request succeeded.

400Bad Request
Content-Type: application/json
(RepeatedRequestReferenceIdError | NullRequestInfoError | NullEffectiveError | InvalidAppAccountTokenError | NullRequestReferenceIDError | InvalidRequestReferenceIDError | InvalidConsistencyTokenError | InvalidStorefrontError | SKULengthExceededError | DescriptionLengthExceededError | DisplayNameLengthExceededError | InvalidProductChangesError | InvalidDisplayNameError | InvalidDescriptionError | InvalidProductError | InvalidSKUError | InvalidTaxProductCodeError | MismatchedStorefrontError | MismatchedStorefrontError | OperationNotAllowedError | MalformedPayloadError | AtLeastOneItemError | AtLeastOneOfDisplayNameOrDescriptionError)

401Unauthorized

The JSON Web Token (JWT) in the authorization header is invalid. For more information, see Authorizing API requests from your server.

403Forbidden
Content-Type: application/json
(SubscriptionDoesNotExistError | SubscriptionNotEligibleError | ProductNotOwnedError | InactiveACASubError | ProductNotEligibleError)

404Not Found
Content-Type: application/json
(TransactionIdNotFoundError | ProductNotFoundError)

429
Content-Type: application/json
RateLimitExceededError

The request exceeded the rate limit. For more information, see Identifying rate limits for Advanced Commerce APIs.

500Internal Server Error
Content-Type: application/json
(GeneralInternalError | GeneralInternalRetryableError)

Server error. Try again later.

Mentioned in

Discussion

Use this endpoint to update the display name and description of an auto-renewable subscription. Calling this endpoint doesn’t change the price, billing details, or the service. For example, you can call Change Subscription Metadata if a subscription’s display name changes due to a change in its branding.

Don’t call this endpoint if a customer is changing subscriptions to receive a different service, such as upgrading, downgrading, or cross-grading. For such changes, use SubscriptionModifyInAppRequest.

HTTP Body

The request body that contains the metadata changes.

See Also

Subscription metadata changes from the server