# Cleverbridge DevHub | Cleverbridge Documentation
> Documentation for Cleverbridge DevHub | Cleverbridge
## Guides
- [Overview](https://dev.cleverbridge.com/docs/overview.md)
- [Get Started with REST APIs](https://dev.cleverbridge.com/docs/getting-started-with-rest-apis.md)
- [Authentication](https://dev.cleverbridge.com/docs/authentication-rest-apis.md)
- [Status Codes](https://dev.cleverbridge.com/docs/status-codes-rest-apis.md)
- [Cart API Guide](https://dev.cleverbridge.com/docs/cart-api-guide.md)
- [Process Cart](https://dev.cleverbridge.com/docs/process-cart.md): `POST /cart/processcart`
- [Product API Guide](https://dev.cleverbridge.com/docs/product-api-guide.md): `GET /product/getproductprice`
- [Integrate the Subscription API](https://dev.cleverbridge.com/docs/subscription-api-guide.md)
- [Get Started with Subscriptions](https://dev.cleverbridge.com/docs/subscription-api-get-started.md)
- [Alignment Settings](https://dev.cleverbridge.com/docs/alignment-settings.md): Learn more about the key parameters before running subscription API calls.
- [Understand Customer Price](https://dev.cleverbridge.com/docs/understand-customer-price.md)
- [Customer Converts from Freemium to Paid Subscription ](https://dev.cleverbridge.com/docs/customer-converts-from-freemium-to-paid-subscription-api-guide.md)
- [Retain Customer with a Discount](https://dev.cleverbridge.com/docs/retain-customer-with-a-discount.md)
- [Extend the Free Trial Period](https://dev.cleverbridge.com/docs/retain-customer-by-extending-a-free-trial-api-guide.md)
- [Extend the Next Billing Date](https://dev.cleverbridge.com/docs/retain-customer-by-extending-the-next-billing-date.md)
- [Replace a Subscription and Providing a Free Access Period](https://dev.cleverbridge.com/docs/retain-customer-by-replacing-a-subscription-and-providing-a-free-access-period.md)
- [Increase the Subscription Billing Interval ](https://dev.cleverbridge.com/docs/retain-customer-by-increasing-the-subscription-billing-interval-api-guide.md)
- [Retain Customer by Decreasing the Subscription Billing Interval](https://dev.cleverbridge.com/docs/retain-customer-by-decreasing-the-subscription-billing-interval.md)
- [Decrease the Subscription Billing Interval](https://dev.cleverbridge.com/docs/copy-of-retain-customer-by-decreasing-the-subscription-billing-interval.md)
- [Billing Guides](https://dev.cleverbridge.com/docs/bill-subscription-customers-for-usage.md)
- [Bill Usage at a Custom Price](https://dev.cleverbridge.com/docs/bill-usage-at-a-custom-price.md)
- [Bill Usage using Quantity-Based Pricing](https://dev.cleverbridge.com/docs/bill-usage-using-quantity-based-pricing.md)
- [Reduce Billing by Applying a Discount](https://dev.cleverbridge.com/docs/reduce-billing-discount.md)
- [Capture Customer Consent for a Subscription Renewal Price Increase](https://dev.cleverbridge.com/docs/capture-customer-consent-for-a-subscription-renewal-price-increase.md)
- [Add users to a subscription](https://dev.cleverbridge.com/docs/change-subscription-renewal-quantity.md)
- [Customize Subscription Renewal Price and Quantity](https://dev.cleverbridge.com/docs/customize-subscription-renewal-price-and-quantity-api-guide.md)
- [Customize Subscription Renewal Price](https://dev.cleverbridge.com/docs/customize-subscription-renewal-price.md)
- [Customize Subscription Renewal Price and Quantity](https://dev.cleverbridge.com/docs/customize-subscription-renewal-price-and-quantity.md)
- [Renew a Manual Renewal Subscription Ahead of Schedule](https://dev.cleverbridge.com/docs/copy-of-renew-a-manual-renewal-subscription-ahead-of-schedule.md)
- [Renew an Automatically Renewing Subscription Early](https://dev.cleverbridge.com/docs/renew-a-auto-renewal-subscription-ahead-of-schedule-api-guide.md)
- [ Renew a Subscription Immediately](https://dev.cleverbridge.com/docs/renew-a-data-limited-subscription-early-at-full-price-api-guide.md)
- [Renew a Data-Limited Subscription Early at a Custom Price](https://dev.cleverbridge.com/docs/renew-a-data-limited-subscription-early-at-custom-price-api-guide.md)
- [Combine a Usage Data Upgrade with an Early Full-Price Renewal](https://dev.cleverbridge.com/docs/combine-a-usage-data-upgrade-with-an-early-full-price-renewal.md)
- [Combine a Usage Data Upgrade with an Early Custom Price Renewal](https://dev.cleverbridge.com/docs/combine-a-usage-data-upgrade-with-an-early-custom-price-renewal.md)
- [Combine a Usage Data Downgrade with an Early Full Price Renewal](https://dev.cleverbridge.com/docs/combine-a-usage-data-downgrade-with-an-early-full-price-renewal-api-guide.md)
- [Turn On Automatic Renewal](https://dev.cleverbridge.com/docs/turn-on-automatic-renewal.md)
- [Upgrade a Subscription Immediately](https://dev.cleverbridge.com/docs/upgrade-a-subscription-immediately-api-guide.md)
- [Upgrade a Subscription Effective Next Billing Date](https://dev.cleverbridge.com/docs/upgrade-a-subscription-effective-next-billing-date-api-guide.md)
- [Downgrade a Subscription Effective Next Billing Date](https://dev.cleverbridge.com/docs/downgrade-a-subscription-effective-next-billing-date-api-guide.md)
- [Combine an Immediate Interval Upgrade with an Early Renewal](https://dev.cleverbridge.com/docs/combine-an-immediate-interval-upgrade-with-an-early-renewal-api-guide.md)
- [Combine an Immediate Product Upgrade with an Early Renewal](https://dev.cleverbridge.com/docs/combine-an-immediate-product-upgrade-with-an-early-renewal-api-guide.md)
- [Increase Subscription User Quantity Immediately](https://dev.cleverbridge.com/docs/increase-subscription-quantity-immediately-api-guide.md)
- [Change Subscription Price Immediately](https://dev.cleverbridge.com/docs/change-subscription-price-immediately-api-guide.md)
- [Make Quantity and Quantity-Based Price Changes Immediately ](https://dev.cleverbridge.com/docs/make-quantity-and-quantity-based-price-changes-immediately-api-guide.md)
- [Update Subscription Price Effective on the Next Billing Date](https://dev.cleverbridge.com/docs/update-existing-subscription-with-new-product-pricing-api-guide.md)
- [Deactivate Subscription Items](https://dev.cleverbridge.com/docs/deactivate-subscription-items.md)
- [Shorten Billing Interval of an Additional Seat](https://dev.cleverbridge.com/docs/shorten-billing-interval-of-additional-seat.md)
- [Align Subscription](https://dev.cleverbridge.com/docs/align-subscription-api-guide.md)
- [Coterming subscriptions](https://dev.cleverbridge.com/docs/coterming-subscriptions.md)
- [Extend Billing Interval of the Original Seat](https://dev.cleverbridge.com/docs/extend-billing-interval-of-the-original-seat-api-guide.md)
- [ Add and co-term additional license at pro-rated price](https://dev.cleverbridge.com/docs/shorten-billing-interval-of-an-additional-seat-api-guide.md)
- [Set up volume pricing](https://dev.cleverbridge.com/docs/set-volume-pricing.md): Volume pricing allows you to offer different price points based on quantity
- [Display All Subscriptions for a Customer ](https://dev.cleverbridge.com/docs/display-all-subscriptions-for-a-customer-api-guide.md)
- [Track Performance of a Promotional Campaign for Subscription Customers](https://dev.cleverbridge.com/docs/track-performance-of-a-promotional-campaign-for-subscription-customers-api-guide.md)
- [Set up X-parameter](https://dev.cleverbridge.com/docs/set-up-x-parameter.md): Set up x-parameter in our web admin tool (SCM)
- [URL Generator API Guide](https://dev.cleverbridge.com/docs/url-generator-api-guide.md)
- [Purchase API Guide](https://dev.cleverbridge.com/docs/purchase-api-guide.md)
- [Troubleshoot Backend REST APIs](https://dev.cleverbridge.com/docs/troubleshoot-backend.md)
- [Pricing API Guide](https://dev.cleverbridge.com/docs/pricing-api-guide-1.md)
- [Get Started with Pricing API](https://dev.cleverbridge.com/docs/get-started-web-rest-apis.md)
- [Troubleshoot Pricing API](https://dev.cleverbridge.com/docs/troubleshoot-pricing-api.md)
- [Hide Elements when no Information is Returned](https://dev.cleverbridge.com/docs/hide-elements-when-no-information-is-returned.md): API returns a `404` value because the `client_id` or `product_id` cannot be found
- [Authentication](https://dev.cleverbridge.com/docs/graph-ql-authentication.md)
- [List of Queries and Mutations](https://dev.cleverbridge.com/docs/graph-ql-list-of-queries-and-mutations.md)
- [Refunds](https://dev.cleverbridge.com/docs/graphql-use-cases-refunds.md)
- [Troubleshoot GraphQL](https://dev.cleverbridge.com/docs/troubleshoot-graphql.md)
- [Integration Overview](https://dev.cleverbridge.com/docs/integration-guide-overview.md)
- [Sign Up for a Free Trial (Anonymous Customer)](https://dev.cleverbridge.com/docs/engage-phase-sign-up-for-free-trial.md)
- [Sign Up for a Paid Subscription (Known Customer)](https://dev.cleverbridge.com/docs/acquire-phase-sign-up-for-paid-subscription-known-customer.md)
- [Update Customer Contact Information](https://dev.cleverbridge.com/docs/update-customer-contact-information-v2.md)
- [Offer Discount for Next Renewal](https://dev.cleverbridge.com/docs/retain-phase-offer-discount-for-next-renewal.md)
- [Renew a Data-Limited Subscription Early at Full Price](https://dev.cleverbridge.com/docs/retain-phase-renew-a-data-limited-subscription-early-at-full-price.md)
- [Switch to Automatic Renewal and Extend Next Billing Date](https://dev.cleverbridge.com/docs/reactivate-subscription-switch-to-automatic-renewal-and-extend-next-billing-date.md)
- [About Storefront](https://dev.cleverbridge.com/docs/about-storefront.md)
- [Full Page Integration](https://dev.cleverbridge.com/docs/full-page-integration.md)
- [Embedded Integration](https://dev.cleverbridge.com/docs/embedded-integration.md)
- [Pop-Up Integration](https://dev.cleverbridge.com/docs/pop-up-integration.md)
- [In-App Integration](https://dev.cleverbridge.com/docs/in-app-integration.md)
- [Globally Optimized Online Storefront Integrated with CRM](https://dev.cleverbridge.com/docs/globally-optimized-online-storefront-integrated-with-crm.md)
- [Profile Mapping](https://dev.cleverbridge.com/docs/profile-mapping.md)
- [Checkout Process Parameters](https://dev.cleverbridge.com/docs/checkout-process-parameters.md)
- [Further Parameter Values for the Scope Parameter](https://dev.cleverbridge.com/docs/further-parameter-values-for-the-scope-parameter.md)
- [URL Parameters for Cookie URLs](https://dev.cleverbridge.com/docs/url-parameters-for-cookie-urls.md)
- [Notifications Overview](https://dev.cleverbridge.com/docs/notifications-overview.md)
- [Notification Types](https://dev.cleverbridge.com/docs/notification-types.md)
- [Schema Definitions](https://dev.cleverbridge.com/docs/schema-definitions-for-notifications.md)
- [Manage Notifications](https://dev.cleverbridge.com/docs/manage-notifications.md)
- [Troubleshoot Notifications](https://dev.cleverbridge.com/docs/troubleshooting-notifications.md)
- [License Key Generators](https://dev.cleverbridge.com/docs/key-generator.md)
- [Troubleshoot License Keys ](https://dev.cleverbridge.com/docs/troubleshoot-license-keys.md): License key generator common errors
- [License Key Upgrades](https://dev.cleverbridge.com/docs/key-upgrades.md)
- [Third-Party Integrations](https://dev.cleverbridge.com/docs/third-party-integrations.md)
## API Reference
- [Generate Cart Preview](https://dev.cleverbridge.com/reference/generatecartpreview.md): Creates a cart preview that is populated with product and price information and allows you to obtain the Cleverbridge cart as a JSON or XML file. You can use this resource to access what customers see when they use a certain IP address or language. You can also use the response to populate your web page with product and pricing information stored in the Cleverbridge platform. This circumvents the need to maintain duplicate product and pricing information in both your database and on the Cleverbridge platform. In addition, you have the option of generating a session URL (SURL). For more information, see [Generate User Session URL](https://dev.cleverbridge.com/reference/generateusersessionurl).
For XML examples and schemas, see the [Additional Examples - Generate Cart Preview](https://dev.cleverbridge.com/page/additional-examples-generate-cart-preview).
- [Process Cart](https://dev.cleverbridge.com/reference/processcart.md): Processes an order automatically. The customer does not need to use a browser, interact with Cleverbridge, or enter new payment information. Instead, Cleverbridge uses the customer's most recent payment details to process the order. If the order cannot be processed automatically, the API returns a unique URL that can be sent to the customer in order to complete their transaction on the Cleverbridge-hosted page. To process an order, you have to submit a customer identifier and the cart item(s). The customer identifier can be a former purchase ID of an existing customer with Cleverbridge (LogonPurchaseId), your own client account identifier (CustomerReferenceId), or a subscription ID (SubscriptionId).
For more information, see [Process Cart](https://dev.cleverbridge.com/docs/process-cart). For XML examples and schemas, see the [Additional Examples - Process Cart](https://dev.cleverbridge.com/page/additional-examples-process-cart).
- [Test Connection](https://dev.cleverbridge.com/reference/testconnection.md): Checks whether or not you can connect with our REST API service using your user credentials (authentication).
- [Get Product Price](https://dev.cleverbridge.com/reference/getproductprice.md): Retrieves real-time price information for a specific product. You can also retrieve up-to-date price information for currencies that you have not set in the Cleverbridge platform. This allows you to compare the prices in the Cleverbridge cart with those on your website. These prices are updated daily, based on the current exchange rate. As a result, you can use this resource to sync pricing information between your system and the Cleverbridge platform on a daily basis.
For XML examples and schemas, see the [Additional Examples - Get Product Price](https://dev.cleverbridge.com/page/additional-examples-get-product-price).
- [Get Purchase V1](https://dev.cleverbridge.com/reference/getpurchase.md): Important: This endpoint has been deprecated. It is recommended that you use [Get Purchase V2](https://dev.cleverbridge.com/reference/purchase_getpurchasev2) if you want to make a new integration with this resource.
Retrieves all information about a particular purchase. When you make a call, you get a Purchase object that contains general purchase information, purchase item information, and other customized data (for example, x-parameters and license keys).
For XML examples and schemas, see the [Additional Examples - Get Purchase V1](https://dev.cleverbridge.com/page/additional-examples-get-purchase).
- [Get Purchase V2](https://dev.cleverbridge.com/reference/purchase_getpurchasev2.md): Retrieves all information about a particular purchase. When you make a call, you get a PurchaseNotification string that contains general purchase information, purchase item information, and other customized data (for example, x-parameters and license keys).
For XML examples and schemas, see the [Additional Examples - Get Purchase V2](https://dev.cleverbridge.com/page/additional-examples-get-purchase-v2).
- [Get Purchase List](https://dev.cleverbridge.com/reference/getpurchaselist.md): Retrieves an extensive list of purchases for a specified time period.
For XML examples and schemas, see the [Additional Examples - Get Purchase List](https://dev.cleverbridge.com/page/additional-examples-get-purchase-list).
- [Get Purchase List by IDs](https://dev.cleverbridge.com/reference/getpurchaselistbyids.md): Retrieves a list purchases for a specified range of PurchaseIDs or ReimbursementIDs.
For XML examples and schemas, see the [Additional Examples - Get Purchase List By IDs](https://dev.cleverbridge.com/page/additional-examples-get-purchase-list-by-ids).
- [Cancel Retry](https://dev.cleverbridge.com/reference/cancelretry.md): Cancels a retry attempt that was scheduled after a customer's payment failed. To cancel a scheduled retry, submit the PurchaseId that you received in the response payload from the [Process Cart](https://dev.cleverbridge.com/reference/processcart) API function. To learn whether a retry has been scheduled, see the IsPaymentRetryScheduled field in the [Process Cart](https://dev.cleverbridge.com/reference/processcart) response.
Important: If you receive a CCA_EXP status in PaymentResult.Code field in the [Process Cart](https://dev.cleverbridge.com/reference/processcart) response, then an Expiration Date Checker call has been made, and it is not possible to cancel the next scheduled payment retry.
- [Update License Key](https://dev.cleverbridge.com/reference/updatelicensekey.md): Updates the license key for an item in an existing purchase.
For XML examples and schemas, see the [Additional Examples - Update License Key](https://dev.cleverbridge.com/page/additional-examples-update-license-key).
- [Update Purchase Parameters](https://dev.cleverbridge.com/reference/updatepurchaseparameters.md): Updates the extra parameters for a purchase. If the parameter key existed in the purchase, the parameter value will be overwritten. If the parameter key did not exist in the purchase, the parameter key and value pair will be created.
For XML examples and schemas, see the [Additional Examples - Update Purchase Parameters](https://dev.cleverbridge.com/page/additional-examples-update-purchase-parameters).
- [Retry Payment](https://dev.cleverbridge.com/reference/purchase_retrypayment.md): Initiates a retry attempt after the initial customer's payment failed. To retry a failed payment, submit the PurchaseId that you received in the response payload from the [Get Purchase](https://dev.cleverbridge.com/reference/purchase_getpurchasev2) API function or the [OnlinePaymentDeclinedNotification](https://dev.cleverbridge.com/reference/onlinepaymentdeclinednotification).
Note:To activate this option, contact your Client Experience Manager.
Important: Using this endpoint to collect failed payments deactivates the Cleverbridge retry schedule.
- [Get Subscription](https://dev.cleverbridge.com/reference/getsubscription.md): Retrieves subscription items for a particular subscription using the subscription ID. Subscription items contain the current status and a list of all related purchases.
For XML examples and schemas, see the [Additional Examples - Get Subscription](https://dev.cleverbridge.com/page/additional-examples-get-subscription).
- [Get Subscriptions By Purchase](https://dev.cleverbridge.com/reference/getsubscriptionsbypurchase.md): Retrieves all subscription items for a particular subscription using a related purchase ID. Subscription items contain the current status and a list of all related purchases.
For XML examples and schemas, see the [Additional Examples - Get Subscription by Purchase](https://dev.cleverbridge.com/page/additional-examples-get-subscription-by-purchase).
- [Get Subscriptions for Customer](https://dev.cleverbridge.com/reference/getsubscriptionsforcustomer.md): Retrieves the subscriptions, including all subscription items, for a particular customer using the customer ID, the customer reference ID , or the customer's email address. Subscription items contain the current status and a list of all related purchases.
For XML examples and schemas, see the [Additional Examples - Get Subscriptions for Customer](https://dev.cleverbridge.com/page/additional-examples-get-subscription-for-customer).
- [Add Subscription Item](https://dev.cleverbridge.com/reference/addsubscriptionitem.md): Adds a new subscription item to an existing subscription or creates a preview of adding a new subscription item to an existing subscription.
Optionally, you can overwrite the price of the subscription item that was defined in the Cleverbridge platform. If you want to modify an existing subscription item, use Update Subscription Item instead.
For XML examples and schemas, see the [Additional Examples - Add Subscription Item](https://dev.cleverbridge.com/page/additional-examples-add-subscription-item).
- [Align Subscriptions](https://dev.cleverbridge.com/reference/alignsubscriptions.md): Consolidates the billing of two subscriptions that belong to one customer. IfAlignToCurrentInterval is set to true, the resource performs a pro-rated calculation of the cost of one subscription so that it can be merged with another subscription, and this results in a single billing event for a given period. You can also use the resource to calculate and preview the pro-rated cost of aligning two subscriptions. CustomerReferenceId) for a subscription. You can use this endpoint to match a unique customer ID (CustomerReferenceId) from your system with the automatically generated Internal customer ID in the Cleverbridge platform when the customer initially purchases the subscription. This way, you'll be able to easily identify any future events related to a customer with multiple subscriptions.CustomerReferenceId corresponds to the internalCustomer field name (JSON) in the notifications you receive for some events related to one-time or recurring purchases the customer makes.AlignToCurrentInterval is set to true, the response returns a prorated price that will be applied to the subscription item immediately. Optionally, it also allows you adjust the quantity of a subscription item.