Flexible bundles test swagger
You can create flexible bundle using this resource.
Requirements:
required | Array of objects (FlexibleBundleSlotDTO) [ 2 .. 6 ] items |
object or null Discount configuration for bundle |
{- "slots": [
- {
- "order": 0,
- "entryPoint": true,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "12345678",
- "excludedFromDiscount": false
}, - {
- "id": "23456789",
- "excludedFromDiscount": false
}
]
}, - {
- "order": 1,
- "entryPoint": false,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "34567890",
- "excludedFromDiscount": false
}, - {
- "id": "45678901",
- "excludedFromDiscount": true
}
]
}
], - "discount": null
}{- "id": "bac2128a-ec95-4d19-a241-d8be7001b8b8",
- "createdAt": "2025-09-21T10:22:02.999Z",
- "createdBy": "USER",
- "slots": [
- {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8bc",
- "order": 0,
- "entryPoint": true,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "offer-1",
- "excludedFromDiscount": false,
- "entryPoint": true,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}
]
}, - {
- "id": "offer-2",
- "excludedFromDiscount": false,
- "entryPoint": false,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": false,
- "reasons": [
- "NOT_AVAILABLE_TO_PURCHASE"
]
}
}
]
}
]
}, - {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8bd",
- "order": 1,
- "entryPoint": false,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "offer-3",
- "excludedFromDiscount": false,
- "entryPoint": false,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}
]
}
]
}
], - "discount": null
}You can fetch page of seller's flexible bundles using this endpoint.
Paging:
To move to next page, specify page.id parameter with value obtained in response from previous request. Number of offer bundles on single page can be specified using limit parameter.
Filtering:
Offer bundles can be filtered to bundles which contain offer specified in offer.id parameter.
| limit | integer <int32> [ 1 .. 1000 ] Default: 20 Example: limit=200 Limit of bundles per page. |
| offer.id | string Example: offer.id=123456789 Filter bundles which contains offer. |
| page.id | string Example: page.id=MjAyNC0wOS0xMFQwNjo0OTowMi40NTBa ID of page which will be retrieved. |
{- "bundles": [
- {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8b8",
- "createdAt": "2025-09-21T10:22:02.999Z",
- "createdBy": "USER",
- "slotsRepresentatives": [
- "offer-1",
- "offer-2"
], - "discount": {
- "type": "WHOLE_BUNDLE_DISCOUNT",
- "bundle": {
- "minimumBoughtOffers": 2,
- "discounts": [
- {
- "marketplaceId": "allegro-pl",
- "percentage": 10
}, - {
- "marketplaceId": "allegro-cz",
- "percentage": 15
}
]
}
}
}, - {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8b8",
- "createdAt": "2025-09-21T10:22:02.999Z",
- "createdBy": "USER",
- "slotsRepresentatives": [
- "offer-4",
- "offer-5",
- "offer-6"
], - "discount": {
- "type": "SLOT_DISCOUNT",
- "slot": {
- "slots": [
- {
- "order": 0,
- "discounts": [
- {
- "marketplaceId": "allegro-pl",
- "percentage": 5
}, - {
- "marketplaceId": "allegro-cz",
- "percentage": 10
}
]
}, - {
- "order": 1,
- "discounts": [
- {
- "marketplaceId": "allegro-pl",
- "percentage": 10
}
]
}
]
}
}
}, - {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8b8",
- "createdAt": "2025-09-21T10:22:02.999Z",
- "createdBy": "ALLEGRO",
- "slotsRepresentatives": [
- "offer-7",
- "offer-8",
- "offer-9"
], - "discount": null
}
], - "nextPage": {
- "id": "eyJsYXN0SWQiOiJidW5kbGUtNzg5In0="
}
}Use this resource to retrieve flexible bundle by its unique identifier.
| bundleId required | string <uuid> Bundle ID. |
{- "id": "bac2128a-ec95-4d19-a241-d8be7001b8b8",
- "createdAt": "2025-09-21T10:22:02.999Z",
- "createdBy": "ALLEGRO",
- "slots": [
- {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8bc",
- "order": 0,
- "entryPoint": true,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "offer-1",
- "excludedFromDiscount": false,
- "entryPoint": true,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}
]
}, - {
- "id": "offer-2",
- "excludedFromDiscount": false,
- "entryPoint": false,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": false,
- "reasons": [
- "NOT_AVAILABLE_TO_PURCHASE"
]
}
}
]
}
]
}, - {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8bd",
- "order": 1,
- "entryPoint": false,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "offer-3",
- "excludedFromDiscount": false,
- "entryPoint": false,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}
]
}
]
}
], - "discount": null
} You can update flexible bundle using this resource.
Requirements:
| bundleId required | string <uuid> Bundle ID. |
required | Array of objects (FlexibleBundleSlotDTO) [ 2 .. 6 ] items |
object or null (FlexibleBundleDiscountDTO) Discount configuration for bundle |
{- "slots": [
- {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8b8",
- "order": 0,
- "entryPoint": true,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "12345678",
- "excludedFromDiscount": false
}, - {
- "id": "23456789",
- "excludedFromDiscount": false
}
]
}, - {
- "id": null,
- "order": 1,
- "entryPoint": false,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "34567890",
- "excludedFromDiscount": false
}, - {
- "id": "45678901",
- "excludedFromDiscount": true
}
]
}
], - "discount": null
}{- "id": "bac2128a-ec95-4d19-a241-d8be7001b8b8",
- "createdAt": "2025-09-21T10:22:02.999Z",
- "createdBy": "ALLEGRO",
- "slots": [
- {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8bc",
- "order": 0,
- "entryPoint": true,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "offer-1",
- "excludedFromDiscount": false,
- "entryPoint": true,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}
]
}, - {
- "id": "offer-2",
- "excludedFromDiscount": false,
- "entryPoint": false,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": false,
- "reasons": [
- "NOT_AVAILABLE_TO_PURCHASE"
]
}
}
]
}
]
}, - {
- "id": "bac2128a-ec95-4d19-a241-d8be7001b8bd",
- "order": 1,
- "entryPoint": false,
- "requiredQuantity": 1,
- "offers": [
- {
- "id": "offer-3",
- "excludedFromDiscount": false,
- "entryPoint": false,
- "marketplaces": [
- {
- "id": "allegro-pl",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}, - {
- "id": "allegro-cz",
- "availability": {
- "available": true,
- "reasons": [ ]
}
}
]
}
]
}
], - "discount": null
}Use this resource to delete flexible bundle by its unique identifier.
| bundleId required | string <uuid> Bundle ID. |
{- "error": "unauthorized",
- "error_description": "Full authentication is required to access this resource"
}