The keys are access level identifiers configured by you in Adapty Dashboard. The values are AccessLevel objects. Can be null if the customer has no access levels
Unique identifier of the access level configured by you in Adapty Dashboard
isActive
boolean
Whether the access level is active. Generally, you have to check just this property to determine if the user has access to premium features
vendorProductId
string
The identifier of the product in the App Store Connect that unlocked this access level
store
string
The store of the purchase that unlocked this access level. The possible values are: play_store, adapty
activatedAt
string (ISO 8601 datetime)
The time when the access level was activated
renewedAt
string (ISO 8601 datetime) (optional)
The time when the access level was renewed
expiresAt
string (ISO 8601 datetime) (optional)
The time when the access level will expire (could be in the past and could be null for lifetime access)
isLifetime
boolean
Whether the access level is active for a lifetime (no expiration date). If set to true you shouldn’t check expires_at, or you could just check isActive
activeIntroductoryOfferType
string (optional)
The type of active introductory offer. Possible values are: free_trial, pay_as_you_go, pay_up_front. If the value is not null, it means that the offer was applied during the current subscription period
activePromotionalOfferType
string (optional)
The type of active promotional offer. Possible values are: free_trial, pay_as_you_go, pay_up_front. If the value is not null, it means that the offer was applied during the current subscription period
activePromotionalOfferId
string (optional)
An identifier of active promotional offer
offerId
string (optional)
An identifier of a discount offer in Google Play that unlocked this access level
willRenew
boolean
Whether the auto-renewable subscription is set to renew
isInGracePeriod
boolean
Whether the auto-renewable subscription is in the grace period
unsubscribedAt
string (ISO 8601 datetime) (optional)
The time when the auto-renewable subscription was cancelled. Subscription can still be active, it just means that auto-renewal turned off. Will be set to null if the user reactivates the subscription
billingIssueDetectedAt
string (ISO 8601 datetime) (optional)
The time when billing issue was detected. Subscription can still be active. Will be set to null if the charge will be made
startsAt
string (ISO 8601 datetime) (optional)
The time when this access level has started (could be in the future)
cancellationReason
string (optional)
The reason why the subscription was cancelled. Possible values are: voluntarily_cancelled, billing_error, refund, price_increase, product_was_not_available, unknown
The store of the purchase. The possible values are: play_store, adapty
vendorProductId
string
The identifier of the product in the App Store Connect
vendorTransactionId
string
Transaction id from the App Store
vendorOriginalTransactionId
string
Original transaction id from the App Store. For auto-renewable subscription, this will be the id of the first transaction in the subscription
isActive
boolean
Whether the subscription is active
isLifetime
boolean
Whether the subscription is active for a lifetime (no expiration date). If set to true you shouldn’t check expires_at, or you could just check isActive
activatedAt
string (ISO 8601 datetime)
The time when the subscription was activated
renewedAt
string (ISO 8601 datetime) (optional)
The time when the subscription was renewed
expiresAt
string (ISO 8601 datetime) (optional)
The time when the subscription will expire (could be in the past and could be null for lifetime access)
startsAt
string (ISO 8601 datetime) (optional)
The time when the subscription has started (could be in the future)
unsubscribedAt
string (ISO 8601 datetime) (optional)
The time when the auto-renewable subscription was cancelled. Subscription can still be active, it just means that auto-renewal turned off. Will be set to null if a user reactivates the subscription
billingIssueDetectedAt
string (ISO 8601 datetime) (optional)
The time when billing issue was detected (Apple was not able to charge the card). Subscription can still be active. Will be set to null if the charge will be made
isInGracePeriod
boolean
Whether the auto-renewable subscription is in the grace period
isSandbox
boolean
Whether the product was purchased in the sandbox environment
isRefund
boolean
Whether the purchase was refunded
willRenew
boolean
Whether the auto-renewable subscription is set to renew
activeIntroductoryOfferType
string (optional)
The type of active introductory offer. Possible values are: free_trial, pay_as_you_go, pay_up_front. If the value is not null, it means that the offer was applied during the current subscription period
activePromotionalOfferType
string (optional)
The type of active promotional offer. Possible values are: free_trial, pay_as_you_go, pay_up_front. If the value is not null, it means that the offer was applied during the current subscription period
activePromotionalOfferId
string (optional)
An identifier of active promotional offer
offerId
string (optional)
An identifier of a discount offer in Google Play that unlocked this subscription
cancellationReason
string (optional)
The reason why the subscription was cancelled. Possible values are: voluntarily_cancelled, billing_error, refund, price_increase, product_was_not_available, unknown
AdaptyProfile.NonSubscription
Information about the user’s non-subscription purchases.
Name
Type
Description
purchaseId
string
The identifier of the purchase in Adapty. You can use it to ensure that you’ve already processed this purchase (for example tracking one time products)
store
string
The store of the purchase. The possible values are: play_store, adapty
vendorProductId
string
The identifier of the product in the App Store Connect
vendorTransactionId
string (optional)
Transaction id from the App Store
purchasedAt
string (ISO 8601 datetime)
The time when the product was purchased
isSandbox
boolean
Whether the product was purchased in the sandbox environment
isRefund
boolean
Whether the purchase was refunded
isConsumable
boolean
Whether the product should only be processed once. If true, the purchase will be returned by Adapty API one time only