Skip to content

External APIs (0.0.1)

Comprehensive API documentation for managing subscriptions, payments, and related operations. These APIs allow you to programmatically manage subscription lifecycles, handle payments, configure products, and integrate subscription functionality into your applications.

Languages
Servers
https://subscription-admin.appstle.com

Subscription Management

Core APIs for managing the complete subscription lifecycle including creation, updates, pausing, resuming, and cancellation of subscriptions.

Operations

Subscription Payments

APIs for managing subscription payment methods, processing payments, handling payment retries, and updating billing information.

Operations

Subscription Contracts

APIs for managing subscription contracts including delivery schedules, pricing, order notes, billing cycles, and shipping addresses.

Operations

Subscription Products

APIs for managing products within subscriptions including adding, removing, updating quantities, and swapping products.

Operations

Billing & Payments

APIs for handling billing operations, payment processing, and financial transactions related to subscriptions.

Operations

Subscription Discounts

APIs for managing discounts and promotional codes applied to subscriptions.

Operations

Subscription One-Time Products

APIs for managing one-time add-on products that can be purchased alongside recurring subscription items.

Operations

Subscription Plans

APIs for managing subscription plans, pricing tiers, and plan configurations.

Operations

Remove products or variants from a subscription group

Request

Removes specified products and/or variants from an existing subscription group (selling plan group). This endpoint allows selective removal of products without affecting the group's configuration or other product assignments.

Key Features:

  • Remove multiple products and variants in a single request
  • Remove all products from a specific collection
  • Silently ignores products/variants not currently in the group
  • Preserves subscription group configuration and settings
  • Updates synchronously and returns the modified group

Collection Removal:

  • When collectionId is provided, fetches and removes all products from that collection
  • Collection processing is limited to 5000 products maximum
  • Collection removal is additive to any explicitly specified productIds/variantIds

Important Notes:

  • Removing products does NOT affect existing active subscriptions
  • Can remove all products, leaving an empty subscription group
  • Products/variants not in the group are silently ignored
  • Use numeric IDs without gid:// prefix for products and variants

Authentication: Requires valid X-API-Key header

Path
idinteger(int64)required

Subscription group ID (numeric ID)

Example: 123456789
Query
productIdsstring^\d+(,\d+)*$

Comma-separated list of product IDs to remove. Use numeric IDs without gid:// prefix.

Example: productIds=987654321,987654322
variantIdsstring^\d+(,\d+)*$

Comma-separated list of variant IDs to remove. Use numeric IDs without gid:// prefix.

Example: variantIds=123456789,123456790
collectionIdinteger(int64)

Shopify collection ID. When provided, removes all products from this collection (up to 5000 products). This is in addition to any explicitly specified productIds/variantIds.

Example: collectionId=287654321
deleteAllProductsAndVariantsboolean

Set to true to delete all products and their variants. Defaults to false.

api_keystringDeprecated

API Key (Deprecated - Use X-API-Key header instead)

Headers
X-API-Keystringrequired

API Key for authentication

Example: sk_live_1234567890abcdef
curl -i -X PUT \
  'https://subscription-admin.appstle.com/api/external/v2/subscription-groups/123456789/remove-products?productIds=987654321%2C987654322&variantIds=123456789%2C123456790&collectionId=287654321&deleteAllProductsAndVariants=true&api_key=string' \
  -H 'X-API-Key: sk_live_1234567890abcdef'

Responses

Products/variants successfully removed from subscription group

Bodyapplication/json
idinteger(int64)
productCountinteger(int64)
productVariantCountinteger(int64)
subscriptionPlansArray of objects(FrequencyInfoDTO)
groupNamestring
productIdsstring
productIdstring
variantIdsstring
accessoryProductIdsstring
updateProductsobject(ProductVariantDTO)
deleteProductsobject(ProductVariantDTO)
translationsstring
Response
application/json
{ "id": 123456789, "groupName": "Monthly Coffee Subscription", "productCount": 5, "productVariantCount": 15, "productIds": "[{\"id\":987654322,\"title\":\"Organic Dark Roast\"},{\"id\":987654323,\"title\":\"Colombian Single Origin\"}]", "variantIds": "[{\"id\":123456790,\"title\":\"500g Bag\"}]", "subscriptionPlans": [ {} ] }

Add products or variants to an existing subscription group

Request

Adds one or more products and/or product variants to an existing subscription group (selling plan group). This endpoint provides a simple way to expand the product catalog eligible for subscription without modifying the group's configuration or existing product assignments.

Key Features:

  • Add multiple products and variants in a single request
  • Preserves existing product and variant assignments
  • Maintains the order of products as provided
  • Updates delivery profiles automatically if needed
  • Synchronously updates Shopify and returns the updated group
  • Optional response enhancement with added products information

Important Notes:

  • Product IDs should be numeric Shopify product IDs without the gid:// prefix
  • Variant IDs should be numeric Shopify variant IDs without the gid:// prefix
  • Adding products also makes all their variants eligible for subscription
  • Adding specific variants limits subscription eligibility to those variants only
  • Duplicate products/variants are handled gracefully by Shopify
  • URL length limits apply to the comma-separated lists (use bulk endpoint for large additions)
  • Include 'x-return-short-response: true' header to get only added products/variants information in response

Use Cases:

  • Launch new products with subscription options
  • Add seasonal items to existing subscription groups
  • Enable subscription for specific product variants
  • Expand subscription eligibility without changing plan configurations
  • Track which products were added in the current request

Authentication: Requires valid X-API-Key header

Path
idinteger(int64)required

Subscription group ID (numeric ID)

Example: 123456789
Query
productIdsstring^\d+(,\d+)*$

Comma-separated list of Shopify product IDs to add. Adding a product makes all its variants eligible for subscription. Use numeric IDs only (e.g., '987654321,987654322,987654323')

Example: productIds=987654321,987654322,987654323
variantIdsstring^\d+(,\d+)*$

Comma-separated list of Shopify variant IDs to add. Use this to enable subscription for specific variants only. Use numeric IDs only (e.g., '123456789,123456790,123456791')

Example: variantIds=123456789,123456790
api_keystringDeprecated

API Key (Deprecated - Use X-API-Key header instead)

Headers
X-API-Keystringrequired

API Key for authentication

Example: sk_live_1234567890abcdef
x-return-short-responseboolean

Header to indicate if response should return only added products ID information. Set to 'true' for minimal response, any other value or omitted for full response.

Default false
curl -i -X PUT \
  'https://subscription-admin.appstle.com/api/external/v2/subscription-groups/123456789/add-products?productIds=987654321%2C987654322%2C987654323&variantIds=123456789%2C123456790&api_key=string' \
  -H 'X-API-Key: sk_live_1234567890abcdef' \
  -H 'x-return-short-response: false'

Responses

Products/variants successfully added to subscription group

Bodyapplication/json
One of:
idinteger(int64)
productCountinteger(int64)
productVariantCountinteger(int64)
subscriptionPlansArray of objects(FrequencyInfoDTO)
groupNamestring
productIdsstring
productIdstring
variantIdsstring
accessoryProductIdsstring
updateProductsobject(ProductVariantDTO)
deleteProductsobject(ProductVariantDTO)
translationsstring
Response
application/json
{ "id": 123456789, "groupName": "Monthly Coffee Subscription", "productCount": 10, "productVariantCount": 35, "productIds": "[{\"id\":987654321,\"title\":\"Premium Coffee Blend\"},{\"id\":987654322,\"title\":\"Organic Dark Roast\"},{\"id\":987654323,\"title\":\"Colombian Single Origin\"}]", "variantIds": "[{\"id\":123456789,\"title\":\"250g Bag\"},{\"id\":123456790,\"title\":\"500g Bag\"}]", "subscriptionPlans": [ {} ] }

Remove products or variants from ALL subscription groups

Request

Removes specified products and/or variants from ALL subscription groups in the store. This is a powerful bulk operation that affects every subscription group simultaneously.

⚠️ WARNING: This operation:

  • Affects ALL subscription groups in your store
  • Cannot be easily undone
  • Processes synchronously (may timeout for stores with many groups)
  • Does NOT affect existing active subscriptions

Use Cases:

  • Discontinuing products from all subscription offerings
  • Removing seasonal items from all groups
  • Cleaning up deleted products from subscription groups
  • Compliance-driven product removals

Important Considerations:

  • Each group is updated individually
  • If any group update fails, previous groups remain updated
  • Large operations may take significant time
  • Consider using individual group removal for better control

Authentication: Requires valid X-API-Key header

Query
productIdsstring^\d+(,\d+)*$

Comma-separated list of product IDs to remove from all groups. Use numeric IDs without gid:// prefix.

Example: productIds=987654321,987654322
variantIdsstring^\d+(,\d+)*$

Comma-separated list of variant IDs to remove from all groups. Use numeric IDs without gid:// prefix.

Example: variantIds=123456789,123456790
api_keystringDeprecated

API Key (Deprecated - Use X-API-Key header instead)

Headers
X-API-Keystringrequired

API Key for authentication

Example: sk_live_1234567890abcdef
curl -i -X PUT \
  'https://subscription-admin.appstle.com/api/external/v2/subscription-groups/remove-products?productIds=987654321%2C987654322&variantIds=123456789%2C123456790&api_key=string' \
  -H 'X-API-Key: sk_live_1234567890abcdef'

Responses

Products/variants successfully removed from all subscription groups

Bodyapplication/json
string
Response
application/json
"Product Deleted Successfully"

Build-a-Box & Bundles

APIs for managing customizable product boxes and bundles where customers can select multiple items.

Operations

Product Catalog

APIs for managing the product catalog including product information, variants, and inventory.

Operations

Operations & Settings

APIs for managing operational settings, configurations, and administrative functions.

Operations

Customer Portal

APIs powering the customer-facing portal where subscribers can manage their own subscriptions.

Operations

Customers

APIs for managing customer information, profiles, and account details.

Operations