# Retrieve a Build-A-Box bundle by ID Fetches the complete configuration and details of a specific Build-A-Box subscription bundle using its unique identifier. This endpoint returns all bundle settings including products, pricing, rules, and delivery options. What You'll Receive: - Complete Bundle Configuration: All settings and properties - Product Information: Full list of available products with details - Pricing Structure: Discount rules, pricing type, and promotional settings - Delivery Options: Subscription frequencies and delivery intervals - Business Rules: Product limits, combination rules, and restrictions - Status Information: Active/inactive state and timestamps - Customization Settings: Allow one-time purchases, product swaps, etc. Use Cases: 1. Bundle Management: Retrieve current bundle settings for review or editing 2. Integration Sync: Synchronize bundle data with external systems 3. Customer Portal: Display bundle options and configurations 4. Audit & Reporting: Track bundle configurations over time 5. Validation: Verify bundle setup before making changes 6. Cloning: Retrieve settings to duplicate a successful bundle 7. Troubleshooting: Debug subscription issues by reviewing bundle config Response Details: The response includes comprehensive information about the bundle: - Bundle Metadata: ID, shop, name, handle, unique reference - Product Pool: All products available for customer selection - Selection Rules: Min/max product counts, quantity limits - Pricing Configuration: Discount percentages, pricing models - Subscription Options: Available delivery frequencies - Display Settings: Product view styles, custom HTML, button text - Advanced Features: Third-party rules, inventory tracking, selection types - Timestamps: Creation and last update dates Authorization: - You can only retrieve bundles that belong to your authenticated shop - The system verifies shop ownership before returning bundle data - Returns 404 if bundle doesn't exist or doesn't belong to your shop Integration Tips: - Cache bundle data to reduce API calls for frequently accessed bundles - Use this endpoint to verify bundle existence before creating subscriptions - Combine with update endpoint for edit workflows (get → modify → update) - Check the active field to determine if the bundle is available to customers - Review availableProducts array to ensure product inventory availability Performance Considerations: - Response size varies based on number of products in the bundle - Bundles with extensive custom HTML or large product pools return more data - Consider requesting only necessary fields if partial data is sufficient - Use batch operations if retrieving multiple bundles Authentication: Requires valid X-API-Key header or api_key parameter (deprecated) Endpoint: GET /api/external/v2/build-a-box/{id} Version: 0.0.1 ## Path parameters: - `id` (integer, required) ## Query parameters: - `api_key` (string) API Key (Deprecated - Use Header X-API-Key instead) ## Header parameters: - `X-API-Key` (string) ## Response 200 fields (application/json): - `id` (integer) - `shop` (string, required) - `subscriptionBundlingEnabled` (boolean) - `subscriptionId` (integer) - `minProductCount` (integer) - `maxProductCount` (integer) - `discount` (number) - `uniqueRef` (string) - `groupName` (string) - `subscriptionBundleLink` (string) - `bundleRedirect` (string) Enum: "CART", "CHECKOUT", "CUSTOM", "NONE" - `customRedirectURL` (string) - `minOrderAmount` (number) - `tieredDiscount` (string) - `productViewStyle` (string) Enum: "QUICK_ADD", "VIEW_DETAILS" - `buildABoxType` (string) Enum: "CLASSIC", "SINGLE_PRODUCT", "MIX_AND_MATCH", "INFINITE", "CUSTOMIZE_BUNDLE", "CLASSIC_BUILD_A_BOX", "SINGLE_PRODUCT_BUILD_A_BOX", "VOLUME_DISCOUNT", "DISCOUNTED_PRICING", "SHIPPING_DISCOUNT", "BUY_X_GET_Y", "SECTIONED_BUNDLE" - `singleProductSettings` (string) - `subscriptionGroup` (string) - `bundleTopHtml` (string) - `bundleBottomHtml` (string) - `proceedToCheckoutButtonText` (string) - `chooseProductsText` (string) - `name` (string) - `trackInventory` (boolean) - `allowOneTimePurchase` (boolean) - `thirdPartyRule` (boolean) - `selectionType` (string) Enum: "FIXED", "FLEXIBLE" - `variants` (string) - `discountedVariants` (string) - `sections` (string) - `appliesOn` (string) Enum: "PRODUCT", "COLLECTION", "BOTH", "ONE_TIME", "SUBSCRIPTION" - `productDiscountType` (string) Enum: "SELECTED_PRODUCT", "EACH_PRODUCT" - `collectionData` (string) - `productSelectionType` (string) Enum: "PRODUCT", "COLLECTION" - `sellingPlanIds` (string) - `minUniqueProductCheck` (boolean) ## Response 401 fields ## Response 404 fields ## Response 500 fields