# Developer documentation - [Introduction](https://juo.dev/docs/introduction.md) - [Overview](https://juo.dev/docs/overview.md) - [Overview](https://juo.dev/docs/core-concepts/overview.md) - [Subscription plans](https://juo.dev/docs/core-concepts/subscription-plans.md) - [Subscribers](https://juo.dev/docs/core-concepts/subscribers.md) - [Subscriptions](https://juo.dev/docs/core-concepts/subscriptions.md) - [Orders](https://juo.dev/docs/core-concepts/orders.md) - [Schedule](https://juo.dev/docs/core-concepts/schedule.md) - [Activity log](https://juo.dev/docs/core-concepts/activity-log.md) - [Overview](https://juo.dev/docs/apps/overview.md) - [Blocks](https://juo.dev/docs/apps/blocks.md) - [Workflows](https://juo.dev/docs/apps/workflows.md) - [Portals](https://juo.dev/docs/apps/portals.md) - [MCP](https://juo.dev/docs/mcp.md): Connect AI assistants to Juo using the Model Context Protocol. - [Introduction](https://juo.dev/docs/api-reference/admin/introduction.md) - [Customer resource](https://juo.dev/docs/api-reference/admin/customers/resource.md): This object represents a customer of your business - [List customers](https://juo.dev/docs/api-reference/admin/customers/list.md): Returns a list of customers. - [Create a customer](https://juo.dev/docs/api-reference/admin/customers/create.md): Used to create a customer. - [Update a customer](https://juo.dev/docs/api-reference/admin/customers/update.md): Used to update a customer. - [Delete a customer](https://juo.dev/docs/api-reference/admin/customers/delete.md): Used to delete a customer. - [Add a payment method](https://juo.dev/docs/api-reference/admin/customers/add-payment-method.md): Used to add a payment method to a customer. - [Product resource](https://juo.dev/docs/api-reference/admin/products/resource.md): This object represents a product in your store - [List products](https://juo.dev/docs/api-reference/admin/products/list.md): Returns a list of products. - [Create a product](https://juo.dev/docs/api-reference/admin/products/create.md): Used to create a product. - [Update a product](https://juo.dev/docs/api-reference/admin/products/update.md): Used to update a product. - [Delete a product](https://juo.dev/docs/api-reference/admin/products/delete.md): Used to delete a product. - [Assign product to plan](https://juo.dev/docs/api-reference/admin/products/assign-plan.md): Used to assign a product to a subscription plan. - [Remove product from plan](https://juo.dev/docs/api-reference/admin/products/remove-plan.md): Used to remove a product from a subscription plan. - [Add a variant](https://juo.dev/docs/api-reference/admin/products/add-variant.md): Used to add a variant to a product. - [Remove a variant](https://juo.dev/docs/api-reference/admin/products/remove-variant.md): Used to remove a variant from a product. - [Assign variant to plan](https://juo.dev/docs/api-reference/admin/products/assign-variant-plan.md): Used to assign a product variant to a subscription plan. - [Remove variant from plan](https://juo.dev/docs/api-reference/admin/products/remove-variant-plan.md): Used to remove a product variant from a subscription plan. - [Subscription resource](https://juo.dev/docs/api-reference/admin/subscriptions/resource.md): Subscription represents a contract between your business and a customer. - [List subscriptions](https://juo.dev/docs/api-reference/admin/subscriptions/list.md): Returns a list of subscriptions. - [Create a subscription](https://juo.dev/docs/api-reference/admin/subscriptions/create.md): Used to create a subscription. - [Update subscription](https://juo.dev/docs/api-reference/admin/subscriptions/update.md): Used to update a subscription. - [Cancel subscription](https://juo.dev/docs/api-reference/admin/subscriptions/cancel.md): Used to cancel a subscription. - [Resume subscription](https://juo.dev/docs/api-reference/admin/subscriptions/resume.md): Used to resume a subscription. - [Pause subscription](https://juo.dev/docs/api-reference/admin/subscriptions/pause.md): Used to pause a subscription. - [Reactivate subscription](https://juo.dev/docs/api-reference/admin/subscriptions/reactivate.md): Used to reactivate a subscription. - [Add custom attributes to a subscription](https://juo.dev/docs/api-reference/admin/subscriptions/add-custom-attributes.md): Used to append one or more custom attributes to a subscription. - [Subscription item resource](https://juo.dev/docs/api-reference/admin/subscription-items/resource.md): This object represents a product included in a subscription. - [Create a subscription item](https://juo.dev/docs/api-reference/admin/subscription-items/create.md): Used to create a subscription item. - [Update subscription item](https://juo.dev/docs/api-reference/admin/subscription-items/update.md): Used to update a subscription item. - [Delete subscription item](https://juo.dev/docs/api-reference/admin/subscription-items/delete.md): Used to delete a subscription item. - [Subscription discount resource](https://juo.dev/docs/api-reference/admin/subscription-discounts/resource.md): This object represents a discount applied to a subscription item. - [Create a subscription discount](https://juo.dev/docs/api-reference/admin/subscription-discounts/create.md): Used to create a subscription discount. - [Update a subscription discount](https://juo.dev/docs/api-reference/admin/subscription-discounts/update.md): Used to update a subscription discount. - [Delete a subscription discount](https://juo.dev/docs/api-reference/admin/subscription-discounts/delete.md): Used to delete a subscription discount. - [Schedule order resource](https://juo.dev/docs/api-reference/admin/schedules/resource.md): This object represents an order within a schedule. - [Get schedule](https://juo.dev/docs/api-reference/admin/schedules/get.md): Returns a customer schedule. - [Schedule adjustment resource](https://juo.dev/docs/api-reference/admin/schedule-adjustments/resource.md): This object represents an adjustment that modifies schedule orders during generation. - [Actions](https://juo.dev/docs/api-reference/admin/schedule-adjustments/actions.md): Available actions for schedule adjustments - [Matchers](https://juo.dev/docs/api-reference/admin/schedule-adjustments/matchers.md): Available matchers for schedule adjustments - [List schedule adjustments](https://juo.dev/docs/api-reference/admin/schedule-adjustments/list.md): Returns a list of schedule adjustments. - [Create a schedule adjustment](https://juo.dev/docs/api-reference/admin/schedule-adjustments/create.md): Used to create a schedule adjustment. - [Delete a schedule adjustment](https://juo.dev/docs/api-reference/admin/schedule-adjustments/delete.md): Used to delete a schedule adjustment. - [List analytics metrics](https://juo.dev/docs/api-reference/admin/analytics/list-metrics.md): Returns the catalog of metrics the analytics query endpoint accepts. - [Query analytics](https://juo.dev/docs/api-reference/admin/analytics/query.md): Executes a time-series analytics query for a given metric. - [Overview](https://juo.dev/docs/api-reference/admin/webhooks/overview.md): How Juo webhooks work and how to subscribe to them - [Signature verification](https://juo.dev/docs/api-reference/admin/webhooks/signature-verification.md): Verify that webhook requests come from Juo - [Customer created](https://juo.dev/api-reference/customer-created.md): Fired when a `customer.created` event occurs. Delivered via Svix. - [Customer updated](https://juo.dev/api-reference/customer-updated.md): Fired when a `customer.updated` event occurs. Delivered via Svix. - [Customer payment method created](https://juo.dev/api-reference/customer-payment-method-created.md): Fired when a `customer-payment-method.created` event occurs. Delivered via Svix. - [Customer payment method updated](https://juo.dev/api-reference/customer-payment-method-updated.md): Fired when a `customer-payment-method.updated` event occurs. Delivered via Svix. - [Customer payment method revoked](https://juo.dev/api-reference/customer-payment-method-revoked.md): Fired when a `customer-payment-method.revoked` event occurs. Delivered via Svix. - [Subscription created](https://juo.dev/api-reference/subscription-created.md): Fired when a `subscription.created` event occurs. Delivered via Svix. - [Subscription updated](https://juo.dev/api-reference/subscription-updated.md): Fired when a `subscription.updated` event occurs. Delivered via Svix. - [Subscription renewed](https://juo.dev/api-reference/subscription-renewed.md): Fired when a `subscription.renewed` event occurs. Delivered via Svix. - [Subscription item created](https://juo.dev/api-reference/subscription-item-created.md): Fired when a `subscription-item.created` event occurs. Delivered via Svix. - [Subscription item updated](https://juo.dev/api-reference/subscription-item-updated.md): Fired when a `subscription-item.updated` event occurs. Delivered via Svix. - [Subscription item deleted](https://juo.dev/api-reference/subscription-item-deleted.md): Fired when a `subscription-item.deleted` event occurs. Delivered via Svix. - [Subscription discount created](https://juo.dev/api-reference/subscription-discount-created.md): Fired when a `subscription-discount.created` event occurs. Delivered via Svix. - [Subscription discount updated](https://juo.dev/api-reference/subscription-discount-updated.md): Fired when a `subscription-discount.updated` event occurs. Delivered via Svix. - [Subscription discount deleted](https://juo.dev/api-reference/subscription-discount-deleted.md): Fired when a `subscription-discount.deleted` event occurs. Delivered via Svix. - [Schedule adjustment created](https://juo.dev/api-reference/schedule-adjustment-created.md): Fired when a `schedule-adjustment.created` event occurs. Delivered via Svix. - [Schedule adjustment updated](https://juo.dev/api-reference/schedule-adjustment-updated.md): Fired when a `schedule-adjustment.updated` event occurs. Delivered via Svix. - [Schedule adjustment deleted](https://juo.dev/api-reference/schedule-adjustment-deleted.md): Fired when a `schedule-adjustment.deleted` event occurs. Delivered via Svix. - [Product created](https://juo.dev/api-reference/product-created.md): Fired when a `product.created` event occurs. Delivered via Svix. - [Product updated](https://juo.dev/api-reference/product-updated.md): Fired when a `product.updated` event occurs. Delivered via Svix. - [Product deleted](https://juo.dev/api-reference/product-deleted.md): Fired when a `product.deleted` event occurs. Delivered via Svix. - [Product variant created](https://juo.dev/api-reference/product-variant-created.md): Fired when a `product-variant.created` event occurs. Delivered via Svix. - [Product variant updated](https://juo.dev/api-reference/product-variant-updated.md): Fired when a `product-variant.updated` event occurs. Delivered via Svix. - [Product variant deleted](https://juo.dev/api-reference/product-variant-deleted.md): Fired when a `product-variant.deleted` event occurs. Delivered via Svix. - [Order created](https://juo.dev/api-reference/order-created.md): Fired when a `order.created` event occurs. Delivered via Svix. - [Order updated](https://juo.dev/api-reference/order-updated.md): Fired when a `order.updated` event occurs. Delivered via Svix. - [Order deleted](https://juo.dev/api-reference/order-deleted.md): Fired when a `order.deleted` event occurs. Delivered via Svix. - [Introduction](https://juo.dev/docs/api-reference/customer/introduction.md) - [Product resource](https://juo.dev/docs/api-reference/customer/products/resource.md): This object represents a product purchasable by customers - [List products](https://juo.dev/docs/api-reference/customer/products/list.md): Returns a list of products. - [Subscription resource](https://juo.dev/docs/api-reference/customer/subscriptions/resource.md): Subscription represents a contract between a business and a customer. - [List subscriptions](https://juo.dev/docs/api-reference/customer/subscriptions/list.md): Returns a list of subscriptions. - [Update subscription](https://juo.dev/docs/api-reference/customer/subscriptions/update.md): Used to update a subscription. - [Cancel subscription](https://juo.dev/docs/api-reference/customer/subscriptions/cancel.md): Used to cancel a subscription. - [Resume subscription](https://juo.dev/docs/api-reference/customer/subscriptions/resume.md): Used to resume a subscription. - [Pause subscription](https://juo.dev/docs/api-reference/customer/subscriptions/pause.md): Used to pause a subscription. - [Reactivate subscription](https://juo.dev/docs/api-reference/customer/subscriptions/reactivate.md): Used to reactivate a subscription. - [Subscription item resource](https://juo.dev/docs/api-reference/customer/subscription-items/resource.md): This object represents a product included in a subscription. - [Create a subscription item](https://juo.dev/docs/api-reference/customer/subscription-items/create.md): Used to create a subscription item. - [Update subscription item](https://juo.dev/docs/api-reference/customer/subscription-items/update.md): Used to update a subscription item. - [Delete subscription item](https://juo.dev/docs/api-reference/customer/subscription-items/delete.md): Used to delete a subscription item. - [Subscription discount resource](https://juo.dev/docs/api-reference/customer/subscription-discounts/resource.md): This object represents a discount applied to a subscription item. - [Create a subscription discount](https://juo.dev/docs/api-reference/customer/subscription-discounts/create.md): Used to create a subscription discount. - [Delete a subscription discount](https://juo.dev/docs/api-reference/customer/subscription-discounts/delete.md): Used to delete a subscription discount. - [Order resource](https://juo.dev/docs/api-reference/customer/orders/resource.md): This object represents an individual transaction within a subscription. - [List orders](https://juo.dev/docs/api-reference/customer/orders/list.md): Returns a list of orders. - [Payment method resource](https://juo.dev/docs/api-reference/customer/payment-methods/resource.md): This object represents a payment method stored against a customer. - [Create a payment method](https://juo.dev/docs/api-reference/customer/payment-methods/create.md): Used to create a payment method. - [Schedule order resource](https://juo.dev/docs/api-reference/customer/schedules/resource.md): This object represents an order within a schedule. - [Get schedule](https://juo.dev/docs/api-reference/customer/schedules/get.md): Returns a customer schedule. - [Schedule adjustment resource](https://juo.dev/docs/api-reference/customer/schedule-adjustments/resource.md): This object represents an adjustment that modifies schedule orders during generation. - [List schedule adjustments](https://juo.dev/docs/api-reference/customer/schedule-adjustments/list.md): Returns a list of schedule adjustments. - [Create a schedule adjustment](https://juo.dev/docs/api-reference/customer/schedule-adjustments/create.md): Used to create a schedule adjustment. - [Delete a schedule adjustment](https://juo.dev/docs/api-reference/customer/schedule-adjustments/delete.md): Used to delete a schedule adjustment. - [Get Shopify auth token](https://juo.dev/docs/api-reference/customer/auth/shopify-token.md): Returns a Shopify authentication token. - [Workflow run resource](https://juo.dev/docs/api-reference/customer/workflows/resource.md): This object represents the state of a running workflow. - [Start a workflow](https://juo.dev/docs/api-reference/customer/workflows/start.md): Used to start a new workflow run. - [Get workflow run](https://juo.dev/docs/api-reference/customer/workflows/get.md): Returns the current state of a workflow run. - [Respond to a workflow run](https://juo.dev/docs/api-reference/customer/workflows/respond.md): Used to respond to a pending interaction in a workflow run. - [Cancel workflow run](https://juo.dev/docs/api-reference/customer/workflows/cancel.md): Used to cancel an active workflow run. - [Blocks](https://juo.dev/docs/blocks/overview.md): Build type-safe, schema-driven subscription UI components — composable in any storefront. - [Getting started](https://juo.dev/docs/blocks/getting-started.md): Scaffold a blocks package with create-juo and start defining store-specific blocks for the Juo Editor. - [Blocks](https://juo.dev/docs/blocks/concepts/blocks.md): Self-contained UI components with typed props and slots, described by a type-safe schema. - [Reactivity](https://juo.dev/docs/blocks/concepts/reactivity.md): Signal-based reactive state that flows through every framework adapter. - [Contexts](https://juo.dev/docs/blocks/concepts/contexts.md): Type-safe dependency injection that lets any block read services and shared state without prop drilling. - [Services](https://juo.dev/docs/blocks/concepts/services.md): Domain APIs that blocks call to read and mutate data. - [Web components](https://juo.dev/docs/blocks/concepts/web-components.md): The custom elements that wire blocks into the DOM — when to reach for each one. - [Localization](https://juo.dev/docs/blocks/concepts/localization.md): Ship blocks with built-in translations, override them per theme or per block instance. - [Editor](https://juo.dev/docs/blocks/concepts/editor.md): How the Juo Editor lets non-technical operators manage portals and blocks built with @juo/blocks. - [Subscription](https://juo.dev/docs/blocks/services/subscription.md): Read and mutate subscriptions — items, discounts, schedule, lifecycle. - [Customer](https://juo.dev/docs/blocks/services/customer.md): Current customer profile as reactive state. - [Order](https://juo.dev/docs/blocks/services/order.md): Order history and individual order lookups. - [Product](https://juo.dev/docs/blocks/services/product.md): Look up products, variants, and purchase options. - [Schedules](https://juo.dev/docs/blocks/services/schedules.md): Upcoming orders, skip / reschedule, and billing-sensitive guards. - [Login](https://juo.dev/docs/blocks/services/login.md): Passwordless and social login, token storage, redirect handling. - [Router](https://juo.dev/docs/blocks/services/router.md): In-page navigation without coupling blocks to a specific router. - [Workflow](https://juo.dev/docs/blocks/services/workflow.md): Run interactive flows — start, respond, observe status. - [Vue](https://juo.dev/docs/blocks/frameworks/vue.md): Render blocks with Vue 3 components. Signals appear as refs through useContext. - [React](https://juo.dev/docs/blocks/frameworks/react.md): React 18+ adapter for rendering blocks as components and reading reactive state with useSignal. - [Preact](https://juo.dev/docs/blocks/frameworks/preact.md): Render blocks with Preact. Same hook shape as React, with a smaller runtime. - [Building a custom portal](https://juo.dev/docs/blocks/guides/custom-portal.md): Build a host application that renders blocks in production and integrates with the Juo Editor. - [Getting started](https://juo.dev/docs/customer-ui/getting-started.md): Install and use @juo/customer-ui web components in any framework or plain HTML. - [Design tokens](https://juo.dev/docs/customer-ui/design-tokens.md): CSS custom property reference for the @juo/customer-ui design system. - [Button](https://juo.dev/docs/customer-ui/button.md): Button with variants, sizes, icons, and async handler support. - [Card](https://juo.dev/docs/customer-ui/card.md): Surface container with border, radius, and nested level support. - [Checkbox](https://juo.dev/docs/customer-ui/checkbox.md): Accessible checkbox with checked, unchecked, and indeterminate states, plus an error style. - [Chip](https://juo.dev/docs/customer-ui/chip.md): Compact label chip with an optional dismiss button. - [Input](https://juo.dev/docs/customer-ui/input.md): Text input with variants, sizes, an error state with message, and optional leading icon or trailing suffix slots. - [Select](https://juo.dev/docs/customer-ui/select.md): Accessible select dropdown built on Reka UI. - [Tag](https://juo.dev/docs/customer-ui/tag.md): Status/category tag with semantic colour variants (info, success, warning, error, neutral) and two sizes. ## OpenAPI Specs - [openapi-admin](/openapi-admin.json) - [openapi-customer](/openapi-customer.json) ## Optional - [Community](https://juo.community) - [Changelog](https://juo.app/changelog)