Streaks storefront API endpoint is now available to fetch streak information for subscription contracts in any locale.

What's New?

The Streak API endpoint enables you to retrieve comprehensive loyalty program details for a given subscription ID, including enrollment status, rewards configuration, and localized content. This allows you to display streak progress and rewards information in your headless subscriber portal.

The endpoint returns the following information:

  • Enrollment status: Whether the subscription is enrolled in a streak program.
  • Next order due date: The upcoming order date to keep the subscriber retained.
  • Rewards configuration: Details about the rewards structure and milestones.
  • Rewards banner URL: Image assets for displaying streak promotions.
  • Localized texts: All customer-facing content in the requested locale.

Refer to the Streaks endpoint documentation from here.

We've redesigned our rate limiting system to provide better predictability and higher throughput for API requests.

What Changed?

Previous Behaviour Each endpoint had its own low rate limit. Developers had to write different code for each endpoint, and many requests kept getting rate-limited due to low capacity.

New Behaviour We now use a two-pool rate limit system that provides greater flexibility and dedicated capacity for your API operations:

Global Pool

  • Limit: 10 requests per second per store
  • Applies to: All endpoints that don't have a specific override
  • Purpose: Ensures overall API stability

Endpoint-Specific Rate Limits

  • Purpose: Provides dedicated capacity for certain operations
  • Independence: These limits operate separately from the global limit
  • Benefit: Allows you to make calls to these endpoints without affecting your global limit quota

Benefits

  • Simplified development: Write consistent rate limit handling code across your application
  • Higher throughput: Endpoint-specific limits don't consume your global quota
  • Better predictability: Clear, documented limits for planning your API usage
  • Reduced rate limiting: Higher capacity means fewer failed requests

Migration Guide

If your application currently implements per-endpoint rate limit handling:

  1. Update your rate limit logic: You can now use a unified approach for most endpoints, checking against the global 10 requests/second limit
  2. Review endpoint-specific limits: Check which endpoints have dedicated capacity that won't affect your global quota
  3. Test your implementation: Verify that your application handles the new rate limit headers correctly

Things to Keep in Mind

  • The global pool applies a 10 requests per second limit across all standard endpoints
  • Endpoint-specific rate limits operate independently and don't consume your global quota
  • Monitor the rate limit headers in API responses to track your current usage and remaining capacity
  • Plan your API calls to optimize usage of both global and endpoint-specific limits

For complete details on the new rate limiting system, including which endpoints have specific overrides, see Admin API rate limits documentation.


Create subscription endpoint now supports additional parameters that provide greater flexibility when setting up subscription contracts.

What's New?

  • Discount codes and manual discounts: Apply discount codes or custom manual discounts at the time of subscription creation, ensuring accurate pricing from the start.
  • Line item properties: Add custom properties to individual line items, enabling you to store additional metadata or configuration details for each product in the subscription.

Refer to the Create subscription endpoint from here.

Merchants can now specify sellingPlanGroupId when adding line items through Storefront and Admin APIs.

What's New?

The sellingPlanGroupId parameter enables merchants to define which specific selling plan discount should be applied to a line item. This provides greater control over subscription pricing and ensures the correct selling plan is associated with line items during cart and subscription operations.

The changes have been made on the following endpoints:

  • Admin API
    • Add line: Add line items with a specific selling plan
    • Bulk line update: Update multiple line items with selling plan changes
    • Swap line: Swap line items while maintaining or changing selling plans
  • Storefront API
    • Add line: Add line items to subscription contracts with selling plans
    • Bulk update lines: Swap line items on existing subscriptions
    • Swap line: Swap line items while maintaining or changing selling plans

Things to Keep in Mind

  1. The product variant on which the operation is being executed must be mapped to the specified selling plan group.
  2. The sellingPlanGroupId passed must have the same frequency as the subscription contract. For example, if the subscription contract has a 3-month billing frequency, the selling plan passed must also have a 3-month frequency.