# Browsing catalogs ## Caching Strategy and API Usage Please read this [section](/how-to/introduction#caching-strategy-and-api-usage). We recommend using the following endpoints to fetch catalog data into your system and cache it for 24 hours. ## List base products Let's say we use the catalog ID `0196f2ef-c0de-7456-ac8e-8e2479c54aa5`. To get a list of catalog's base products, you can use the [/v1/ticketing/catalogs/{id}/product_bases](/openapi/ticketingproductbase/api_v1ticketingcatalogs_catalogidproduct_bases_get_collection) ### Request ```bash curl --request GET \ --url https://api.korusticket.com/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases\?page\=1\&itemsPerPage\=2 \ -H 'accept: application/ld+json' \ -H 'Authorization: Bearer {{YOUR_JWT_TOKEN}}' \ -H 'Accept-Language: fr' ``` ### Response ```json { "@context": "/contexts/TicketingProductBase", "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases", "@type": "Collection", "totalItems": 2, "member": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0", "@type": "TicketingProductBase", "id": "0199570c-3380-7e12-9dcd-7cbe238e71f0", "name": "Saison 2025 - 2026 - Ligue 1 Uber Eats - OL / FC LORIENT", "disabled": false }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3741-7efd-b79e-88891146a6b9", "@type": "TicketingProductBase", "id": "0199570c-3741-7efd-b79e-88891146a6b9", "name": "Saison 2025 - 2026 - CLASSIC TOUR", "disabled": false } ], "view": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases?limit=2", "@type": "PartialCollectionView" }, "search": { "@type": "IriTemplate", "template": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases{?}", "variableRepresentation": "BasicRepresentation", "mapping": [] } } ``` ## List product of a base Let's choose the "Saison 2025 - 2026 - Ligue 1 Uber Eats - OL / FC LORIENT" base product with id `0199570c-3380-7e12-9dcd-7cbe238e71f0`. To list products of this base, we can use the endpoint [/v1/ticketing/catalogs/{id}/product_bases/{id}/products](/openapi/ticketingproduct/api_v1ticketingcatalogs_catalogidproduct_bases_productbaseidproducts_get_collection) ### Request ```bash curl --request GET \ --url https://api.korusticket.com/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/products\ -H 'accept: application/ld+json' \ -H 'Authorization: Bearer {{YOUR_JWT_TOKEN}}' \ -H 'Accept-Language: fr' ``` ### Response ```json { "@context": "/contexts/TicketingProduct", "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/products", "@type": "Collection", "totalItems": 8, "member": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-6f74-7109-9dc0-7de6541daf52", "@type": "TicketingProduct", "id": "0199570c-6f74-7109-9dc0-7de6541daf52", "name": "L1 - CAT 1 - OL / FC LORIENT - TARIF ENFANT - OUEST BASSE 011", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-6f82-77c3-9fba-539181a023d8", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-6f82-77c3-9fba-539181a023d8", "label": "TARIF ENFANT" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-6f84-7628-bdad-3bd1b704288e", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-6f84-7628-bdad-3bd1b704288e", "label": "CAT 1" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-6f85-7b5b-bed3-1c9745dcab46", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-6f85-7b5b-bed3-1c9745dcab46", "label": "OUEST BASSE 011" } } ] }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-8d42-7064-b074-5f263c928c32", "@type": "TicketingProduct", "id": "0199570c-8d42-7064-b074-5f263c928c32", "name": "L1 - CAT 1 - OL / FC LORIENT - TARIF CSE - OUEST BASSE 011", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-8d4d-79e2-87d1-94f74ed4edc7", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8d4d-79e2-87d1-94f74ed4edc7", "label": "TARIF CSE" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-6f84-7628-bdad-3bd1b704288e", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-6f84-7628-bdad-3bd1b704288e", "label": "CAT 1" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-6f85-7b5b-bed3-1c9745dcab46", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-6f85-7b5b-bed3-1c9745dcab46", "label": "OUEST BASSE 011" } } ] }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-8dd3-79f7-b574-498b10abf67d", "@type": "TicketingProduct", "id": "0199570c-8dd3-79f7-b574-498b10abf67d", "name": "L1 - CAT 2 - OL / FC LORIENT - PLEIN TARIF - EST INTER 131", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-8dd9-7e94-9d0c-07b43974ece3", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dd9-7e94-9d0c-07b43974ece3", "label": "PLEIN TARIF" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-8dd9-7e94-9d0c-07b43a5c158d", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dd9-7e94-9d0c-07b43a5c158d", "label": "CAT 2" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-8dda-715a-b5b4-9c03e9910a8a", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dda-715a-b5b4-9c03e9910a8a", "label": "EST INTER 131" } } ] }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-8e5d-7766-ba98-46cb63797580", "@type": "TicketingProduct", "id": "0199570c-8e5d-7766-ba98-46cb63797580", "name": "L1 - CAT 2 - OL / FC LORIENT - TARIF ENFANT - EST INTER 131", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-6f82-77c3-9fba-539181a023d8", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-6f82-77c3-9fba-539181a023d8", "value": "TARIF ENFANT" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-8dd9-7e94-9d0c-07b43a5c158d", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dd9-7e94-9d0c-07b43a5c158d", "value": "CAT 2" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-8dda-715a-b5b4-9c03e9910a8a", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dda-715a-b5b4-9c03e9910a8a", "value": "EST INTER 131" } } ] }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-8ed6-70a5-ab35-c776dc3c14d0", "@type": "TicketingProduct", "id": "0199570c-8ed6-70a5-ab35-c776dc3c14d0", "name": "L1 - CAT 2 - OL / FC LORIENT - TARIF CSE - EST INTER 131", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-8d4d-79e2-87d1-94f74ed4edc7", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8d4d-79e2-87d1-94f74ed4edc7", "label": "TARIF CSE" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-8dd9-7e94-9d0c-07b43a5c158d", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dd9-7e94-9d0c-07b43a5c158d", "label": "CAT 2" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-8dda-715a-b5b4-9c03e9910a8a", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dda-715a-b5b4-9c03e9910a8a", "label": "EST INTER 131" } } ] }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-8f5a-7e8d-bc80-135f8f4ef0c4", "@type": "TicketingProduct", "id": "0199570c-8f5a-7e8d-bc80-135f8f4ef0c4", "name": "L1 - CAT 3 - OL / FC LORIENT - PLEIN TARIF - EST INTER 132", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-8dd9-7e94-9d0c-07b43974ece3", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8dd9-7e94-9d0c-07b43974ece3", "label": "PLEIN TARIF" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-8f5f-7db5-8c76-6021d952b69f", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8f5f-7db5-8c76-6021d952b69f", "label": "CAT 3" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-8f60-7b06-86e7-56319596a3bb", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8f60-7b06-86e7-56319596a3bb", "label": "EST INTER 132" } } ] }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-8fd0-7cf1-b935-192857bf5d5c", "@type": "TicketingProduct", "id": "0199570c-8fd0-7cf1-b935-192857bf5d5c", "name": "L1 - CAT 3 - OL / FC LORIENT - TARIF ENFANT - EST INTER 132", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-6f82-77c3-9fba-539181a023d8", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-6f82-77c3-9fba-539181a023d8", "label": "TARIF ENFANT" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-8f5f-7db5-8c76-6021d952b69f", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8f5f-7db5-8c76-6021d952b69f", "label": "CAT 3" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-8f60-7b06-86e7-56319596a3bb", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8f60-7b06-86e7-56319596a3bb", "label": "EST INTER 132" } } ] }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-9056-70e8-99bb-f865148ec0f0", "@type": "TicketingProduct", "id": "0199570c-9056-70e8-99bb-f865148ec0f0", "name": "L1 - CAT 3 - OL / FC LORIENT - TARIF CSE - EST INTER 132", "description": "", "disabled": false, "options": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type", "@type": "TicketingProductBaseOption", "code": "price_type", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/price_type/values/0199570c-8d4d-79e2-87d1-94f74ed4edc7", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8d4d-79e2-87d1-94f74ed4edc7", "label": "TARIF CSE" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category", "@type": "TicketingProductBaseOption", "code": "category", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/category/values/0199570c-8f5f-7db5-8c76-6021d952b69f", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8f5f-7db5-8c76-6021d952b69f", "label": "CAT 3" } }, { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone", "@type": "TicketingProductBaseOption", "code": "zone", "value": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values/0199570c-8f60-7b06-86e7-56319596a3bb", "@type": "TicketingProductBaseOptionValueResource", "id": "0199570c-8f60-7b06-86e7-56319596a3bb", "label": "EST INTER 132" } } ] } ], "view": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/products", "@type": "PartialCollectionView" }, "search": { "@type": "IriTemplate", "template": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/products{?}", "variableRepresentation": "BasicRepresentation", "mapping": [] } } ``` There are eight products derived from the base product. Each product from a base defines specific values for each of the base's options in the `options` property. > Note: Every product derived from a base defines a value for each option. You can use the options as categories to structure the product catalog data in your model or to organize your shop UI. ## List base's options A base can define zero or more options. To list a base's options, we use the [/v1/ticketing/catalogs/{catalogId}/product_bases/{id}/options](/openapi/ticketingproductbaseoption/api_v1ticketingcatalogs_catalogidproduct_bases_idoptions_get_collection) endpoint. ## List option value To list available option's values, we can use the [/v1/ticketing/catalogs/{catalogId}/product_bases/{productBaseId}/options/{code}/values](/openapi/ticketingproductbaseoptionvalue/api_v1ticketingcatalogs_catalogidproduct_bases_productbaseidoptions_codevalues_get_collection) endpoint. Taking the preceding JSON response, we could do the following request to ask for available zones : ```bash curl --request GET \ --url https://api.korusticket.com/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/product_bases/0199570c-3380-7e12-9dcd-7cbe238e71f0/options/zone/values \ -H 'accept: application/ld+json' \ -H 'Authorization: Bearer {{YOUR_JWT_TOKEN}}' \ -H 'Accept-Language: fr' ``` ## Available options Here is the available list of options: - days_count (Access Duration): Defines the number of access days granted by the product. - price_type (Price Category): Defines the product's pricing category (e.g., full price, reduced, student). - seating_category (Seating Category): Defines the type of seating granted by the product (e.g., seated, standing, VIP). - zone (Geographic Zone): Defines the geographic location within the venue where the event takes place. The list of available options is predefined by the Korus system, and we could add options in the future. However, the possible values for each option are dynamic and depend on the underlying ticketing systems. ## List product offers An Offer is dated and specifies the price, availability, tickets granted by the product, and the available sessions for each ticket that can be selected during reservation. To list a product's offers, we use the [GET /v1/ticketing/catalogs/{catalogId}/offers](/openapi/ticketingoffer/api_v1ticketingcatalogs_catalogidoffers_get_collection) endpoint as follows: ### Request ```bash curl --request GET \ --url https://api.korusticket.com/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/offers\?product[]=0199570c-9056-70e8-99bb-f865148ec0f0?\&page\=1\&itemsPerPage\=2 \ -H 'accept: application/ld+json' \ -H 'Authorization: Bearer {{YOUR_JWT_TOKEN}}' \ -H 'Accept-Language: fr' ``` ### Response ```json { "@context": "/contexts/TicketingOffer", "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/offers", "@type": "Collection", "totalItems": 1, "member": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/offers/0199570c-9a9c-7619-89a7-d7d1db276ce7", "@type": "TicketingOffer", "id": "0199570c-9a9c-7619-89a7-d7d1db276ce7", "date": "2025-12-31", "expiresAt": "2025-12-31T20:00:00+01:00", "availabilityCheckRequired": true, "availableQuantity": null, "realtimePriceRequired": false, "price": { "@type": "OfferPrice", "@id": "/.well-known/genid/7298e93032cd69e518f0", "amountInclTax": "48.00", "originalAmountInclTax": "48.00", "currency": "EUR" }, "product": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/products/0199570c-9056-70e8-99bb-f865148ec0f0", "@type": "TicketingProduct", "id": "0199570c-9056-70e8-99bb-f865148ec0f0", "name": "L1 - CAT 3 - OL / FC LORIENT - TARIF CSE - EST INTER 132", "description": "", "disabled": false }, "tickets": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/offers/0199570c-9a9c-7619-89a7-d7d1db276ce7/tickets/0199570c-9a9c-7619-89a7-d7d1dc12aa67", "@type": "TicketingOfferTicket", "id": "0199570c-9a9c-7619-89a7-d7d1dc12aa67", "name": "OL / FC LORIENT", "description": "", "dateAccess": false, "sessions": [ { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/offers/0199570c-9a9c-7619-89a7-d7d1db276ce7/tickets/0199570c-9a9c-7619-89a7-d7d1dc12aa67/sessions/0199570c-9a9d-7718-8e12-042cc0530540", "@type": "TicketingOfferTicketSession", "id": "0199570c-9a9d-7718-8e12-042cc0530540", "occursAt": "2025-12-31T17:00:00+01:00", "duration": 120 } ], "form": null } ] } ], "view": { "@id": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/offers?itemsPerPage=2&product%5B%5D=0199570c-9056-70e8-99bb-f865148ec0f0", "@type": "PartialCollectionView" }, "search": { "@type": "IriTemplate", "template": "/v1/ticketing/catalogs/0196f2ef-c0de-7456-ac8e-8e2479c54aa5/offers{?product}", "variableRepresentation": "BasicRepresentation", "mapping": [ { "@type": "IriTemplateMapping", "variable": "product", "property": "product", "required": false } ] } } ``` In this response we have the following information: - there is only one offer - this offer contains one ticket, and the ticket has one session. - the field `"availabilityCheckRequired"=true` indicates that the offer has a limited capacity. You can check the offer's real-time availability before reserving. Read [this section](/how-to/availability-checks) for more details. - the field `“realtimePriceRequired"=false` indicates that the price returned will not change. For realtime price, refer to [this section](/how-to/real-time-price#realtime-price) for more details.