AptlyStar

RevenueCat

Manage in-app subscriptions and entitlements

RevenueCat is a subscription management platform that enables you to easily set up, manage, and analyze in-app subscriptions for your apps. With RevenueCat, you can handle the complexities of in-app purchases across platforms like iOS, Android, and web—all through a single unified API.

With RevenueCat, you can:

  • Manage subscribers: Track user subscriptions, entitlements, and purchases across all platforms in real time
  • Simplify implementation: Integrate RevenueCat’s SDKs to abstract away App Store and Play Store purchase logic
  • Automate entitlement logic: Define and manage what features users should receive when they purchase or renew
  • Analyze revenue: Access dashboards and analytics to view churn, LTV, revenue, active subscriptions, and more
  • Grant or revoke entitlements: Manually adjust user access (for example, for customer support or promotions)
  • Operate globally: Support purchases, refunds, and promotions worldwide with ease

In Aptlystar, the RevenueCat integration allows your agents to fetch and manage subscriber data, review and update entitlements, and automate subscription-related workflows. Use RevenueCat to centralize subscription operations for your apps directly within your Aptlystar workspace.

Usage Instructions

Integrate RevenueCat into the workflow. Manage subscribers, entitlements, offerings, and Google Play subscriptions. Retrieve customer subscription status, grant or revoke promotional entitlements, record purchases, update subscriber attributes, and manage Google Play subscription billing.

Tools

revenuecat_get_customer

Retrieve subscriber information by app user ID

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber

Output

ParameterTypeDescription
subscriberobjectThe subscriber object with subscriptions and entitlements
↳ first_seenstringISO 8601 date when subscriber was first seen
↳ original_app_user_idstringOriginal app user ID
↳ original_purchase_datestringISO 8601 date of original purchase
↳ management_urlstringURL for managing the subscriber subscriptions
↳ subscriptionsobjectMap of product identifiers to subscription objects
↳ store_transaction_idstringStore transaction identifier
↳ original_transaction_idstringOriginal transaction identifier
↳ purchase_datestringISO 8601 purchase date
↳ original_purchase_datestringISO 8601 date of the original purchase
↳ expires_datestringISO 8601 expiration date
↳ is_sandboxbooleanWhether this is a sandbox purchase
↳ unsubscribe_detected_atstringISO 8601 date when unsubscribe was detected
↳ billing_issues_detected_atstringISO 8601 date when billing issues were detected
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ ownership_typestringOwnership type (purchased, family_shared)
↳ period_typestringPeriod type (normal, trial, intro, promotional, prepaid)
↳ storestringStore the subscription was purchased from (app_store, play_store, stripe, etc.)
↳ refunded_atstringISO 8601 date when subscription was refunded
↳ auto_resume_datestringISO 8601 date when a paused subscription will auto-resume
↳ product_plan_identifierstringGoogle Play base plan identifier (for products set up after Feb 2023)
↳ entitlementsobjectMap of entitlement identifiers to entitlement objects
↳ grant_datestringISO 8601 grant date
↳ expires_datestringISO 8601 expiration date
↳ product_identifierstringProduct identifier
↳ is_activebooleanWhether the entitlement is active
↳ will_renewbooleanWhether the entitlement will renew
↳ period_typestringPeriod type (normal, trial, intro, promotional)
↳ purchase_datestringISO 8601 date of the latest purchase or renewal
↳ storestringStore the entitlement was granted from
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ non_subscriptionsobjectMap of non-subscription product identifiers to arrays of purchase objects
metadataobjectSubscriber summary metadata
↳ app_user_idstringThe app user ID
↳ first_seenstringISO 8601 date when the subscriber was first seen
↳ active_entitlementsnumberNumber of active entitlements
↳ active_subscriptionsnumberNumber of active subscriptions

revenuecat_delete_customer

Permanently delete a subscriber and all associated data

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber to delete

Output

ParameterTypeDescription
deletedbooleanWhether the subscriber was deleted
app_user_idstringThe deleted app user ID

revenuecat_create_purchase

Record a purchase (receipt) for a subscriber via the REST API

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat API key (public or secret)
appUserIdstringYesThe app user ID of the subscriber
fetchTokenstringYesThe receipt token or purchase token from the store (App Store receipt, Google Play purchase token, or Stripe subscription ID)
productIdstringYesThe product identifier for the purchase
pricenumberNoThe price of the product in the currency specified
currencystringNoISO 4217 currency code (e.g., USD, EUR)
isRestorebooleanNoWhether this is a restore of a previous purchase
platformstringNoPlatform of the purchase (ios, android, amazon, macos, stripe). Required for Stripe and Paddle purchases.

Output

ParameterTypeDescription
subscriberobjectThe updated subscriber object after recording the purchase
↳ first_seenstringISO 8601 date when subscriber was first seen
↳ original_app_user_idstringOriginal app user ID
↳ original_purchase_datestringISO 8601 date of original purchase
↳ management_urlstringURL for managing the subscriber subscriptions
↳ subscriptionsobjectMap of product identifiers to subscription objects
↳ store_transaction_idstringStore transaction identifier
↳ original_transaction_idstringOriginal transaction identifier
↳ purchase_datestringISO 8601 purchase date
↳ original_purchase_datestringISO 8601 date of the original purchase
↳ expires_datestringISO 8601 expiration date
↳ is_sandboxbooleanWhether this is a sandbox purchase
↳ unsubscribe_detected_atstringISO 8601 date when unsubscribe was detected
↳ billing_issues_detected_atstringISO 8601 date when billing issues were detected
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ ownership_typestringOwnership type (purchased, family_shared)
↳ period_typestringPeriod type (normal, trial, intro, promotional, prepaid)
↳ storestringStore the subscription was purchased from (app_store, play_store, stripe, etc.)
↳ refunded_atstringISO 8601 date when subscription was refunded
↳ auto_resume_datestringISO 8601 date when a paused subscription will auto-resume
↳ product_plan_identifierstringGoogle Play base plan identifier (for products set up after Feb 2023)
↳ entitlementsobjectMap of entitlement identifiers to entitlement objects
↳ grant_datestringISO 8601 grant date
↳ expires_datestringISO 8601 expiration date
↳ product_identifierstringProduct identifier
↳ is_activebooleanWhether the entitlement is active
↳ will_renewbooleanWhether the entitlement will renew
↳ period_typestringPeriod type (normal, trial, intro, promotional)
↳ purchase_datestringISO 8601 date of the latest purchase or renewal
↳ storestringStore the entitlement was granted from
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ non_subscriptionsobjectMap of non-subscription product identifiers to arrays of purchase objects

revenuecat_grant_entitlement

Grant a promotional entitlement to a subscriber

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber
entitlementIdentifierstringYesThe entitlement identifier to grant
durationstringYesDuration of the entitlement (daily, three_day, weekly, monthly, two_month, three_month, six_month, yearly, lifetime)
startTimeMsnumberNoOptional start time in milliseconds since Unix epoch. Set to a past time to achieve custom durations shorter than daily.

Output

ParameterTypeDescription
subscriberobjectThe updated subscriber object after granting the entitlement
↳ first_seenstringISO 8601 date when subscriber was first seen
↳ original_app_user_idstringOriginal app user ID
↳ original_purchase_datestringISO 8601 date of original purchase
↳ management_urlstringURL for managing the subscriber subscriptions
↳ subscriptionsobjectMap of product identifiers to subscription objects
↳ store_transaction_idstringStore transaction identifier
↳ original_transaction_idstringOriginal transaction identifier
↳ purchase_datestringISO 8601 purchase date
↳ original_purchase_datestringISO 8601 date of the original purchase
↳ expires_datestringISO 8601 expiration date
↳ is_sandboxbooleanWhether this is a sandbox purchase
↳ unsubscribe_detected_atstringISO 8601 date when unsubscribe was detected
↳ billing_issues_detected_atstringISO 8601 date when billing issues were detected
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ ownership_typestringOwnership type (purchased, family_shared)
↳ period_typestringPeriod type (normal, trial, intro, promotional, prepaid)
↳ storestringStore the subscription was purchased from (app_store, play_store, stripe, etc.)
↳ refunded_atstringISO 8601 date when subscription was refunded
↳ auto_resume_datestringISO 8601 date when a paused subscription will auto-resume
↳ product_plan_identifierstringGoogle Play base plan identifier (for products set up after Feb 2023)
↳ entitlementsobjectMap of entitlement identifiers to entitlement objects
↳ grant_datestringISO 8601 grant date
↳ expires_datestringISO 8601 expiration date
↳ product_identifierstringProduct identifier
↳ is_activebooleanWhether the entitlement is active
↳ will_renewbooleanWhether the entitlement will renew
↳ period_typestringPeriod type (normal, trial, intro, promotional)
↳ purchase_datestringISO 8601 date of the latest purchase or renewal
↳ storestringStore the entitlement was granted from
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ non_subscriptionsobjectMap of non-subscription product identifiers to arrays of purchase objects

revenuecat_revoke_entitlement

Revoke all promotional entitlements for a specific entitlement identifier

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber
entitlementIdentifierstringYesThe entitlement identifier to revoke

Output

ParameterTypeDescription
subscriberobjectThe updated subscriber object after revoking the entitlement
↳ first_seenstringISO 8601 date when subscriber was first seen
↳ original_app_user_idstringOriginal app user ID
↳ original_purchase_datestringISO 8601 date of original purchase
↳ management_urlstringURL for managing the subscriber subscriptions
↳ subscriptionsobjectMap of product identifiers to subscription objects
↳ store_transaction_idstringStore transaction identifier
↳ original_transaction_idstringOriginal transaction identifier
↳ purchase_datestringISO 8601 purchase date
↳ original_purchase_datestringISO 8601 date of the original purchase
↳ expires_datestringISO 8601 expiration date
↳ is_sandboxbooleanWhether this is a sandbox purchase
↳ unsubscribe_detected_atstringISO 8601 date when unsubscribe was detected
↳ billing_issues_detected_atstringISO 8601 date when billing issues were detected
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ ownership_typestringOwnership type (purchased, family_shared)
↳ period_typestringPeriod type (normal, trial, intro, promotional, prepaid)
↳ storestringStore the subscription was purchased from (app_store, play_store, stripe, etc.)
↳ refunded_atstringISO 8601 date when subscription was refunded
↳ auto_resume_datestringISO 8601 date when a paused subscription will auto-resume
↳ product_plan_identifierstringGoogle Play base plan identifier (for products set up after Feb 2023)
↳ entitlementsobjectMap of entitlement identifiers to entitlement objects
↳ grant_datestringISO 8601 grant date
↳ expires_datestringISO 8601 expiration date
↳ product_identifierstringProduct identifier
↳ is_activebooleanWhether the entitlement is active
↳ will_renewbooleanWhether the entitlement will renew
↳ period_typestringPeriod type (normal, trial, intro, promotional)
↳ purchase_datestringISO 8601 date of the latest purchase or renewal
↳ storestringStore the entitlement was granted from
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ non_subscriptionsobjectMap of non-subscription product identifiers to arrays of purchase objects

revenuecat_list_offerings

List all offerings configured for the project

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat API key
appUserIdstringYesAn app user ID to retrieve offerings for
platformstringNoPlatform to filter offerings (ios, android, stripe, etc.)

Output

ParameterTypeDescription
current_offering_idstringThe identifier of the current offering
offeringsarrayList of offerings
↳ identifierstringOffering identifier
↳ descriptionstringOffering description
↳ packagesarrayList of packages in the offering
↳ identifierstringPackage identifier
↳ platform_product_identifierstringPlatform-specific product identifier
metadataobjectOfferings metadata
↳ countnumberNumber of offerings returned
↳ current_offering_idstringCurrent offering identifier

revenuecat_update_subscriber_attributes

Update custom subscriber attributes (e.g., $email, $displayName, or custom key-value pairs)

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber
attributesjsonYesJSON object of attributes to set. Each key maps to an object with a "value" field. Example: {"$email": {"value": "user@example.com"}, "$displayName": {"value": "John"}}

Output

ParameterTypeDescription
updatedbooleanWhether the subscriber attributes were successfully updated
app_user_idstringThe app user ID of the updated subscriber

revenuecat_defer_google_subscription

Defer a Google Play subscription by extending its billing date by a number of days (Google Play only)

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber
productIdstringYesThe Google Play product identifier of the subscription to defer (use the part before the colon for products set up after Feb 2023)
extendByDaysnumberYesNumber of days to extend the subscription by (1-365)

Output

ParameterTypeDescription
subscriberobjectThe updated subscriber object after deferring the Google subscription
↳ first_seenstringISO 8601 date when subscriber was first seen
↳ original_app_user_idstringOriginal app user ID
↳ original_purchase_datestringISO 8601 date of original purchase
↳ management_urlstringURL for managing the subscriber subscriptions
↳ subscriptionsobjectMap of product identifiers to subscription objects
↳ store_transaction_idstringStore transaction identifier
↳ original_transaction_idstringOriginal transaction identifier
↳ purchase_datestringISO 8601 purchase date
↳ original_purchase_datestringISO 8601 date of the original purchase
↳ expires_datestringISO 8601 expiration date
↳ is_sandboxbooleanWhether this is a sandbox purchase
↳ unsubscribe_detected_atstringISO 8601 date when unsubscribe was detected
↳ billing_issues_detected_atstringISO 8601 date when billing issues were detected
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ ownership_typestringOwnership type (purchased, family_shared)
↳ period_typestringPeriod type (normal, trial, intro, promotional, prepaid)
↳ storestringStore the subscription was purchased from (app_store, play_store, stripe, etc.)
↳ refunded_atstringISO 8601 date when subscription was refunded
↳ auto_resume_datestringISO 8601 date when a paused subscription will auto-resume
↳ product_plan_identifierstringGoogle Play base plan identifier (for products set up after Feb 2023)
↳ entitlementsobjectMap of entitlement identifiers to entitlement objects
↳ grant_datestringISO 8601 grant date
↳ expires_datestringISO 8601 expiration date
↳ product_identifierstringProduct identifier
↳ is_activebooleanWhether the entitlement is active
↳ will_renewbooleanWhether the entitlement will renew
↳ period_typestringPeriod type (normal, trial, intro, promotional)
↳ purchase_datestringISO 8601 date of the latest purchase or renewal
↳ storestringStore the entitlement was granted from
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ non_subscriptionsobjectMap of non-subscription product identifiers to arrays of purchase objects

revenuecat_refund_google_subscription

Refund and optionally revoke a Google Play subscription (Google Play only)

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber
productIdstringYesThe Google Play product identifier of the subscription to refund

Output

ParameterTypeDescription
subscriberobjectThe updated subscriber object after refunding the Google subscription
↳ first_seenstringISO 8601 date when subscriber was first seen
↳ original_app_user_idstringOriginal app user ID
↳ original_purchase_datestringISO 8601 date of original purchase
↳ management_urlstringURL for managing the subscriber subscriptions
↳ subscriptionsobjectMap of product identifiers to subscription objects
↳ store_transaction_idstringStore transaction identifier
↳ original_transaction_idstringOriginal transaction identifier
↳ purchase_datestringISO 8601 purchase date
↳ original_purchase_datestringISO 8601 date of the original purchase
↳ expires_datestringISO 8601 expiration date
↳ is_sandboxbooleanWhether this is a sandbox purchase
↳ unsubscribe_detected_atstringISO 8601 date when unsubscribe was detected
↳ billing_issues_detected_atstringISO 8601 date when billing issues were detected
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ ownership_typestringOwnership type (purchased, family_shared)
↳ period_typestringPeriod type (normal, trial, intro, promotional, prepaid)
↳ storestringStore the subscription was purchased from (app_store, play_store, stripe, etc.)
↳ refunded_atstringISO 8601 date when subscription was refunded
↳ auto_resume_datestringISO 8601 date when a paused subscription will auto-resume
↳ product_plan_identifierstringGoogle Play base plan identifier (for products set up after Feb 2023)
↳ entitlementsobjectMap of entitlement identifiers to entitlement objects
↳ grant_datestringISO 8601 grant date
↳ expires_datestringISO 8601 expiration date
↳ product_identifierstringProduct identifier
↳ is_activebooleanWhether the entitlement is active
↳ will_renewbooleanWhether the entitlement will renew
↳ period_typestringPeriod type (normal, trial, intro, promotional)
↳ purchase_datestringISO 8601 date of the latest purchase or renewal
↳ storestringStore the entitlement was granted from
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ non_subscriptionsobjectMap of non-subscription product identifiers to arrays of purchase objects

revenuecat_revoke_google_subscription

Immediately revoke access to a Google Play subscription and issue a refund (Google Play only)

Input

ParameterTypeRequiredDescription
apiKeystringYesRevenueCat secret API key (sk_...)
appUserIdstringYesThe app user ID of the subscriber
productIdstringYesThe Google Play product identifier of the subscription to revoke

Output

ParameterTypeDescription
subscriberobjectThe updated subscriber object after revoking the Google subscription
↳ first_seenstringISO 8601 date when subscriber was first seen
↳ original_app_user_idstringOriginal app user ID
↳ original_purchase_datestringISO 8601 date of original purchase
↳ management_urlstringURL for managing the subscriber subscriptions
↳ subscriptionsobjectMap of product identifiers to subscription objects
↳ store_transaction_idstringStore transaction identifier
↳ original_transaction_idstringOriginal transaction identifier
↳ purchase_datestringISO 8601 purchase date
↳ original_purchase_datestringISO 8601 date of the original purchase
↳ expires_datestringISO 8601 expiration date
↳ is_sandboxbooleanWhether this is a sandbox purchase
↳ unsubscribe_detected_atstringISO 8601 date when unsubscribe was detected
↳ billing_issues_detected_atstringISO 8601 date when billing issues were detected
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ ownership_typestringOwnership type (purchased, family_shared)
↳ period_typestringPeriod type (normal, trial, intro, promotional, prepaid)
↳ storestringStore the subscription was purchased from (app_store, play_store, stripe, etc.)
↳ refunded_atstringISO 8601 date when subscription was refunded
↳ auto_resume_datestringISO 8601 date when a paused subscription will auto-resume
↳ product_plan_identifierstringGoogle Play base plan identifier (for products set up after Feb 2023)
↳ entitlementsobjectMap of entitlement identifiers to entitlement objects
↳ grant_datestringISO 8601 grant date
↳ expires_datestringISO 8601 expiration date
↳ product_identifierstringProduct identifier
↳ is_activebooleanWhether the entitlement is active
↳ will_renewbooleanWhether the entitlement will renew
↳ period_typestringPeriod type (normal, trial, intro, promotional)
↳ purchase_datestringISO 8601 date of the latest purchase or renewal
↳ storestringStore the entitlement was granted from
↳ grace_period_expires_datestringISO 8601 grace period expiration date
↳ non_subscriptionsobjectMap of non-subscription product identifiers to arrays of purchase objects

On this page