# Zaymo Custom Integration > Zaymo Custom Integration allows any e-commerce platform to integrate with Zaymo's in-email widgets and actions. ## Docs - [Introduction](https://docs.zaymo.com/introduction.md): Welcome to Zaymo API Documentation - [Product Upsells](https://docs.zaymo.com/use-cases/product-upsells.md): Allow customers to purchase products directly from email - [Subscription Portal](https://docs.zaymo.com/use-cases/subscription-portal.md): Enable subscribers to manage subscriptions directly from email - [Swap Up](https://docs.zaymo.com/use-cases/swap-up.md): Let subscribers swap their current subscription product directly from email - [Reactivate](https://docs.zaymo.com/use-cases/reactivate.md): Help customers reactivate cancelled subscriptions from email - [Custom Button (NEW)](https://docs.zaymo.com/use-cases/custom-button.md): Connect any endpoint to enable custom actions directly from email - [Overview](https://docs.zaymo.com/api-reference/overview.md): How to build an API for integrating with Zaymo - [Authentication](https://docs.zaymo.com/api-reference/authentication.md): How to authenticate requests from Zaymo - [Get Products](https://docs.zaymo.com/api-reference/upsells/get-products.md): Retrieve product information for in-email product blocks. This endpoint should support two modes: - [Add Product](https://docs.zaymo.com/api-reference/upsells/add-product.md): Add a product to a customer's order directly from email. This endpoint processes a customer's product selection from the email upsell widget. - [Undo Add Product (Optional)](https://docs.zaymo.com/api-reference/upsells/undo-add-product-optional.md): Remove a product from a customer's order that was previously added using the add-product endpoint. Implementation of this endpoint is optional - if not implemented, customers will not be able to undo their purchases in the email upsell widget. - [Get Current Subscription](https://docs.zaymo.com/api-reference/customer-portal/get-current-subscription.md): Retrieve the customer's current active subscription details including billing information and items. If the customer has multiple subscriptions, we recommend returning the next upcoming subscription. - [Send Subscription Now](https://docs.zaymo.com/api-reference/customer-portal/send-subscription-now.md): Trigger immediate processing and shipment of the customer's next upcoming subscription order. This endpoint is required for the 'Send Now' button to be shown in the customer portal. - [Delay Subscription](https://docs.zaymo.com/api-reference/customer-portal/delay-subscription.md): Postpone the customer's next subscription billing and shipment to a new date. This endpoint is required for the 'Delay Subscription' button to be shown in the customer portal. - [Get Cancelled Subscriptions](https://docs.zaymo.com/api-reference/reactivate/get-cancelled-subscriptions.md): Retrieve a list of the customer's cancelled subscriptions that are eligible for reactivation. Subscriptions will be displayed in the order they are returned by this endpoint. - [Reactivate Cancelled Subscription](https://docs.zaymo.com/api-reference/reactivate/reactivate-cancelled-subscription.md): Reactivate a previously cancelled subscription for the customer. - [Swap Subscription Product](https://docs.zaymo.com/api-reference/swap-up/swap-subscription-product.md): Swap one of the customer's current subscription items to a new product. The current item should come from GET /zaymo/customer-portal/subscription -> items[].id, and the new product should come from GET /zaymo/upsells/products. An optional discount code may be applied during the swap. - [Execute Custom Action](https://docs.zaymo.com/api-reference/custom-actions/execute-custom-action.md): Execute a custom action when a customer clicks a custom button in email. Receives the customer's email and the action ID to process any custom business logic. - [Get Discount](https://docs.zaymo.com/api-reference/discounts/get-discount.md): Retrieve discount information for a given discount code. This endpoint is necessary to support discounts in the add product and reactivate endpoints. Zaymo calls this endpoint to validate discount codes and retrieve the discount type and amount before applying them to products or subscriptions. ## OpenAPI Specs - [openapi](https://docs.zaymo.com/openapi.json)