# Wholesaler Catalogs

A Wholesaler Catalog contains products listed by the Wholesaler's own internal product codes. These can be attached to specific versions of products and so can therefore be different to the version of the product held as the latest version in the main data pool.

## List Catalog Products

> Get a list of products from a Wholesaler catalog. I.e. products that have a wholesaler product code attached.

```json
{"openapi":"3.0.3","info":{"title":"Erudus API","version":"2.0.0"},"tags":[{"name":"Wholesaler Catalogs","description":"\nAccess and manage Wholesaler Product Catalogs.\n\nA Wholesaler Catalog contains products listed by the Wholesaler's own internal product codes.\n\nThese can be attached to specific versions of products and so can therefore be different to the version of the product held as the latest version in the main data pool.\n\nAn API key associated with the relevant wholesaler account is required."}],"servers":[{"url":"https://api.erudus.com"}],"security":[{"default":[]}],"components":{"securitySchemes":{"default":{"type":"http","scheme":"bearer","description":"You can retrieve your token by visiting your dashboard and clicking <b>Manage API tokens</b>."}}},"paths":{"/v2/catalogs/{wholesaler}":{"get":{"summary":"List Catalog Products","operationId":"listCatalogProducts","description":"Get a list of products from a Wholesaler catalog. I.e. products that have a wholesaler product code attached.","parameters":[{"in":"query","name":"sort","description":"Sort results by cataloged_at, changed_at, manufacturer_product_name, product_code. Prefixing with a hyphen will reverse order.\nDefaults to '-changed_at'.","required":false,"schema":{"type":"string","description":"Sort results by cataloged_at, changed_at, manufacturer_product_name, product_code. Prefixing with a hyphen will reverse order.\nDefaults to '-changed_at'."}},{"in":"query","name":"filter[manufacturer]","description":"Filter by ID of manufacturer.","required":false,"schema":{"type":"integer","description":"Filter by ID of manufacturer."}},{"in":"query","name":"filter[brand]","description":"Filter by ID of brand.","required":false,"schema":{"type":"integer","description":"Filter by ID of brand."}},{"in":"query","name":"filter[label]","description":"Filter by ID of label.","required":false,"schema":{"type":"integer","description":"Filter by ID of label."}},{"in":"query","name":"filter[changed_at]","description":"Filter by date of product change equal to (eq:), greater than (gt:) or less than a date (lt:).","required":false,"schema":{"type":"string","description":"Filter by date of product change equal to (eq:), greater than (gt:) or less than a date (lt:)."}},{"in":"query","name":"filter[cataloged_at]","description":"Filter by date of product cataloged_at or product changed_at, equal to (eq:), greater than (gt:) or less than a date (lt:).","required":false,"schema":{"type":"string","description":"Filter by date of product cataloged_at or product changed_at, equal to (eq:), greater than (gt:) or less than a date (lt:)."}},{"in":"query","name":"page","description":"Page of result set.","required":false,"schema":{"type":"integer","description":"Page of result set."}},{"in":"query","name":"limit","description":"Number of records per page. Example 10","required":false,"schema":{"type":"integer","description":"Number of records per page. Example 10"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"oneOf":[{"description":"","type":"object","properties":{"page":{"type":"integer"},"per page":{"type":"integer"},"pages":{"type":"integer"},"total":{"type":"integer"},"data":{"type":"array","items":{"type":"object","properties":{"product_code":{"type":"string"},"erudus_id":{"type":"string"},"version":{"type":"string"},"version_dismissed":{"type":"string","nullable":true},"component_uuid":{"type":"string","nullable":true},"status":{"type":"string"},"changed_at":{"type":"string"},"latest_version":{"type":"string"},"latest_at":{"type":"string"},"schema":{"type":"string"},"schema_name":{"type":"string"},"manufacturer_product_name":{"type":"string"},"product_name":{"type":"string"},"standardised_name":{"type":"string"},"manufacturer_product_code":{"type":"string"},"traded_unit_gtin":{"type":"string","nullable":true},"manufacturer_version_number":{"type":"string","nullable":true},"manufacturer":{"type":"integer"},"manufacturer_name":{"type":"string"},"brand":{"type":"integer"},"brand_name":{"type":"string"},"label":{"type":"integer"},"label_name":{"type":"string","nullable":true},"label_code":{"type":"string","nullable":true},"components":{"type":"array","items":{"type":"object","properties":{"component_uuid":{"type":"string"},"component_name":{"type":"string","nullable":true},"internal_gtin":{"type":"string","nullable":true},"manufacturers_component_code":{"type":"string","nullable":true}}}},"parent_id":{"type":"string","nullable":true},"change_type":{"type":"string"},"change_reason":{"type":"string"},"reviewed_at":{"type":"string"}}}}}},{"description":"No results found.","type":"object","properties":{"page":{"type":"integer"},"per page":{"type":"integer"},"pages":{"type":"integer"},"total":{"type":"integer"},"data":{"type":"array"}}}]}}}}},"tags":["Wholesaler Catalogs"]}}}}
```

## Get Catalog Product

> Get a product using the Wholesaler product code.\
> \
> This will return the specific version of the product to which the product code is attached in the Wholesaler's catalog.\
> \
> Note: You should url encode the wholesaler code. Wholesalers use various characters in their codes that can cause issues if not encoded when calling this endpoint.

```json
{"openapi":"3.0.3","info":{"title":"Erudus API","version":"2.0.0"},"tags":[{"name":"Wholesaler Catalogs","description":"\nAccess and manage Wholesaler Product Catalogs.\n\nA Wholesaler Catalog contains products listed by the Wholesaler's own internal product codes.\n\nThese can be attached to specific versions of products and so can therefore be different to the version of the product held as the latest version in the main data pool.\n\nAn API key associated with the relevant wholesaler account is required."}],"servers":[{"url":"https://api.erudus.com"}],"security":[{"default":[]}],"components":{"securitySchemes":{"default":{"type":"http","scheme":"bearer","description":"You can retrieve your token by visiting your dashboard and clicking <b>Manage API tokens</b>."}}},"paths":{"/v2/catalogs/{wholesaler}/{code}":{"get":{"summary":"Get Catalog Product","operationId":"getCatalogProduct","description":"Get a product using the Wholesaler product code.\n\nThis will return the specific version of the product to which the product code is attached in the Wholesaler's catalog.\n\nNote: You should url encode the wholesaler code. Wholesalers use various characters in their codes that can cause issues if not encoded when calling this endpoint.","parameters":[{"in":"query","name":"output","description":"Sets an alternative output format to raw, flat or ungroup.","required":false,"schema":{"type":"string","description":"Sets an alternative output format to raw, flat or ungroup."}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"erudus_id":{"type":"string"},"version":{"type":"string"},"version_dismissed":{"type":"string","nullable":true},"component_uuid":{"type":"string","nullable":true},"product_code":{"type":"string"},"standardised_name":{"type":"string"},"status":{"type":"string"},"changed_at":{"type":"string"},"latest_version":{"type":"string"},"change_reason":{"type":"string"},"change_type":{"type":"integer"},"reviewed_at":{"type":"string"},"parent_id":{"type":"string","nullable":true},"replaced_by":{"type":"array"},"general":{"type":"object","properties":{"manufacturer_product_name":{"type":"string"},"product_name":{"type":"string"},"manufacturer":{"type":"integer"},"manufacturer_name":{"type":"string"},"label":{"type":"integer"},"label_name":{"type":"string","nullable":true},"label_code":{"type":"string"},"brand":{"type":"integer"},"brand_name":{"type":"string"},"schema":{"type":"string"},"schema_name":{"type":"string"},"manufacturer_product_code":{"type":"string"},"product_description":{"type":"string"},"product_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"product_category":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"storage_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"manufacturer_address":{"type":"string","nullable":true},"marketing_description":{"type":"string"},"day_code":{"type":"string"},"batch_code":{"type":"string"},"manufacturer_version_number":{"type":"string"},"effective_date":{"type":"string","nullable":true}}},"outer":{"type":"object","properties":{"no_outer_present":{"type":"string","nullable":true},"traded_unit_gtin":{"type":"string"},"variable_inner_components":{"type":"string","nullable":true},"consumer_units_per_traded":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"outer_case_gross_weight":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"outer_case_height":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"outer_case_depth":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"outer_case_net_weight":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"outer_case_width":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"trade_item_splittable":{"type":"string","nullable":true},"value_added_tax_rate":{"type":"string","nullable":true},"inner_packs_in_case":{"type":"string","nullable":true}}},"inner_pack":{"type":"object","properties":{"inner_pack_height":{"type":"string","nullable":true},"inner_pack_depth":{"type":"string","nullable":true},"inner_pack_width":{"type":"string","nullable":true},"inner_pack_gtin":{"type":"string"},"inner_pack_splittable":{"type":"string","nullable":true},"inner_pack_gross_weight":{"type":"string","nullable":true},"inner_pack_net_weight":{"type":"string","nullable":true},"inner_components_in_pack":{"type":"string","nullable":true},"inner_pack_product_code":{"type":"string"}}},"safety_outer":{"type":"object","properties":{"product_health_warning":{"type":"string"},"age_restricted_product":{"type":"string","nullable":true},"age_restriction":{"type":"string","nullable":true}}},"pallet":{"type":"object","properties":{"non_palletised":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"pallet_type":{"type":"string","nullable":true},"pallet_gtin":{"type":"string"},"cases_per_pallet":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"pallet_gross_weight":{"type":"string","nullable":true},"pallet_height":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"cases_per_pallet_layer":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"layers_per_pallet":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}}}},"waste_outer":{"type":"object","properties":{"outer_packaging":{"type":"array","items":{"type":"object","properties":{"packaging_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"packaging_weight":{"type":"integer"},"recycled_plastic":{"type":"string","nullable":true},"base_material_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"packaging_returnable":{"type":"string","nullable":true}}}},"transport_packaging":{"type":"array","items":{"type":"object","properties":{"packaging_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"packaging_weight":{"type":"integer"},"recycled_plastic":{"type":"string","nullable":true},"base_material_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"packaging_returnable":{"type":"string","nullable":true}}}},"inner_pack_packaging":{"type":"string","nullable":true}}},"logistics":{"type":"object","properties":{"max_shelf_life":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"shelf_life_from_opening":{"type":"string","nullable":true},"shelf_life_exempt":{"type":"string","nullable":true}}},"other":{"type":"object","properties":{"manufacturer_comments":{"type":"string"},"product_health_warning":{"type":"string"},"age_restricted_product":{"type":"string","nullable":true},"age_restriction":{"type":"string","nullable":true},"deposit_return_scheme":{"type":"string","nullable":true}}},"components":{"type":"array","items":{"type":"object","properties":{"general":{"type":"object","properties":{"component_name":{"type":"string"},"component_uuid":{"type":"string"}}},"origin":{"type":"object","properties":{"country_of_origin":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}}},"place_of_provenance":{"type":"string"},"country_of_origin_details":{"type":"string"},"primary_ingredient_origin":{"type":"string","nullable":true},"primary_ingredient_details":{"type":"string"}}},"accreditations":{"type":"object","properties":{"acc_aoecs":{"type":"string","nullable":true},"acc_bcorp":{"type":"string","nullable":true},"acc_brcgs_certified":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"acc_brcgs_agents_brokers":{"type":"string","nullable":true},"acc_brcgs_ethical":{"type":"string","nullable":true},"acc_brcgs_food_safety":{"type":"string","nullable":true},"acc_brcgs_gluten_free":{"type":"string","nullable":true},"acc_brcgs_plant_based":{"type":"string","nullable":true},"acc_brcgs_start":{"type":"string","nullable":true},"acc_brcgs_storage_distribution":{"type":"string","nullable":true},"acc_ethical_tea":{"type":"string","nullable":true},"acc_fair_trade":{"type":"string","nullable":true},"acc_food_for_life":{"type":"string","nullable":true},"acc_fsc":{"type":"string","nullable":true},"acc_fssc_22000":{"type":"string","nullable":true},"acc_ifs_food_standard":{"type":"string","nullable":true},"acc_iso_14001":{"type":"string","nullable":true},"acc_iso_22000":{"type":"string","nullable":true},"acc_iso_45001":{"type":"string","nullable":true},"acc_iso_9001_2015":{"type":"string","nullable":true},"acc_loop":{"type":"string","nullable":true},"acc_organic":{"type":"string","nullable":true},"acc_rainforest":{"type":"string","nullable":true},"acc_rspo":{"type":"string","nullable":true},"acc_rtrs":{"type":"string","nullable":true},"acc_sqf":{"type":"string","nullable":true},"acc_salsa":{"type":"string","nullable":true},"acc_school_approved":{"type":"string","nullable":true},"acc_sedex":{"type":"string","nullable":true},"acc_vegan":{"type":"string","nullable":true},"acc_vegetarian":{"type":"string","nullable":true},"other_accreditation":{"type":"string"}}},"inner_other":{"type":"object","properties":{"health_marks":{"type":"string"},"intrastat_taric":{"type":"string"},"commodity_code":{"type":"string"},"meursing_code":{"type":"string"},"not_for_eu":{"type":"string","nullable":true}}},"additives":{"type":"object","properties":{"artificial_antioxidants":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"artificial_colours":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"artificial_flavour_enhancers":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"artificial_flavourings":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"artificial_preservatives":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"artificial_sweeteners":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}}}},"allergens":{"type":"object","properties":{"contains_celery_celeriac":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_cereal":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_barley":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_oats":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_rye":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_wheat":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_crustacea":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_eggs":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_fish":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_lupin":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_milk":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_molluscs":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_mustard":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_tree_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_almond_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_brazil_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_cashew_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_hazelnut_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_macadamia_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_pecan_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_pistachio_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_walnut_nuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_peanuts":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_sesame_seeds":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_soybeans":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_celery_celeriac_risk_source":{"type":"string","nullable":true},"contains_cereal_risk_source":{"type":"string","nullable":true},"contains_barley_risk_source":{"type":"string","nullable":true},"contains_oats_risk_source":{"type":"string","nullable":true},"contains_rye_risk_source":{"type":"string","nullable":true},"contains_wheat_risk_source":{"type":"string","nullable":true},"contains_crustacea_risk_source":{"type":"string","nullable":true},"contains_eggs_risk_source":{"type":"string","nullable":true},"contains_fish_risk_source":{"type":"string","nullable":true},"contains_lupin_risk_source":{"type":"string","nullable":true},"contains_mustard_risk_source":{"type":"string","nullable":true},"contains_milk_risk_source":{"type":"string","nullable":true},"contains_molluscs_risk_source":{"type":"string","nullable":true},"contains_tree_nuts_risk_source":{"type":"string","nullable":true},"contains_almond_nuts_risk_source":{"type":"string","nullable":true},"contains_brazil_nuts_risk_source":{"type":"string","nullable":true},"contains_cashew_nuts_risk_source":{"type":"string","nullable":true},"contains_hazelnut_nuts_risk_source":{"type":"string","nullable":true},"contains_macadamia_nuts_risk_source":{"type":"string","nullable":true},"contains_pecan_nuts_risk_source":{"type":"string","nullable":true},"contains_pistachio_nuts_risk_source":{"type":"string","nullable":true},"contains_walnut_nuts_risk_source":{"type":"string","nullable":true},"contains_peanuts_risk_source":{"type":"string","nullable":true},"contains_sesame_seeds_risk_source":{"type":"string","nullable":true},"contains_soybeans_risk_source":{"type":"string","nullable":true},"contains_sulphur_dioxide":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"allergen_statement_on_pack":{"type":"string"},"additional_allergen_information":{"type":"string"},"contains_cereal_gluten_20ppm":{"type":"string","nullable":true},"contains_wheat_gluten_20ppm":{"type":"string","nullable":true},"contains_rye_gluten_20ppm":{"type":"string","nullable":true},"contains_barley_gluten_20ppm":{"type":"string","nullable":true},"contains_oats_gluten_20ppm":{"type":"string","nullable":true},"contains_sulphur_dioxide_risk_source":{"type":"string","nullable":true}}},"free_from":{"type":"object","properties":{"free_from_gluten":{"type":"string","nullable":true},"free_from_wheat":{"type":"string","nullable":true},"free_from_rye":{"type":"string","nullable":true},"free_from_barley":{"type":"string","nullable":true},"free_from_oats":{"type":"string","nullable":true},"free_from_nuts":{"type":"string","nullable":true},"free_from_celery":{"type":"string","nullable":true},"free_from_crustacea":{"type":"string","nullable":true},"free_from_eggs":{"type":"string","nullable":true},"free_from_fish":{"type":"string","nullable":true},"free_from_lupin":{"type":"string","nullable":true},"free_from_mustard":{"type":"string","nullable":true},"free_from_lactose":{"type":"string","nullable":true},"free_from_milk":{"type":"string","nullable":true},"free_from_molluscs":{"type":"string","nullable":true},"free_from_peanuts":{"type":"string","nullable":true},"free_from_sesame":{"type":"string","nullable":true},"free_from_soybeans":{"type":"string","nullable":true},"free_from_sulphur_dioxide":{"type":"string","nullable":true},"very_low_gluten":{"type":"string","nullable":true}}},"nutrients":{"type":"object","properties":{"traffic_light_labelling":{"type":"string","nullable":true},"nutritional_data_exempt":{"type":"string","nullable":true},"nutritional_information_source":{"type":"string","nullable":true},"nutrition_units":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"number_of_servings":{"type":"string","nullable":true},"serving_size":{"type":"string","nullable":true},"serving_details":{"type":"string"},"hfss_product":{"type":"string","nullable":true},"hfss_score":{"type":"string","nullable":true},"fibre_type":{"type":"string","nullable":true},"chol_100":{"type":"string","nullable":true},"trans_fats_100":{"type":"string","nullable":true},"fat_percentage_dry_100":{"type":"string","nullable":true},"non_milk_extrinsic_sugars_100":{"type":"string","nullable":true},"non_milk_extrinsic_sugars_prepared":{"type":"string","nullable":true},"nutrition_statements":{"type":"string"},"cal_100_kj":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"cal_100_kcal":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"fat_100":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"sat_fat_100":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"mono_fat_100":{"type":"string","nullable":true},"poly_fat_100":{"type":"string","nullable":true},"carb_100":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"sugar_carb_100":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"polyols_carb_100":{"type":"string","nullable":true},"starch_carb_100":{"type":"string","nullable":true},"fibre_100":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"protein_100":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"salt_100":{"type":"object","properties":{"value":{"type":"number"},"units":{"type":"string"}}},"sodium_100":{"type":"string","nullable":true},"sugar_carb_serving":{"type":"string","nullable":true},"vitamin_a_100":{"type":"string","nullable":true},"vitamin_d_100":{"type":"string","nullable":true},"vitamin_e_100":{"type":"string","nullable":true},"vitamin_k_100":{"type":"string","nullable":true},"vitamin_c_100":{"type":"string","nullable":true},"thiamin_b1_100":{"type":"string","nullable":true},"riboflavin_b2_100":{"type":"string","nullable":true},"niacin_b3_100":{"type":"string","nullable":true},"vitamin_b6_100":{"type":"string","nullable":true},"folate_100":{"type":"string","nullable":true},"vitamin_b12_100":{"type":"string","nullable":true},"biotin_b7_100":{"type":"string","nullable":true},"pantothenic_acid_100":{"type":"string","nullable":true},"potassium_100":{"type":"string","nullable":true},"chloride_100":{"type":"string","nullable":true},"calcium_100":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"phosphorus_100":{"type":"string","nullable":true},"magnesium_100":{"type":"string","nullable":true},"iron_100":{"type":"string","nullable":true},"zinc_100":{"type":"string","nullable":true},"copper_100":{"type":"string","nullable":true},"manganese_100":{"type":"string","nullable":true},"fluoride_100":{"type":"string","nullable":true},"selenium_100":{"type":"string","nullable":true},"chromium_100":{"type":"string","nullable":true},"molybdenum_100":{"type":"string","nullable":true},"iodine_100":{"type":"string","nullable":true},"bicarbonate_100":{"type":"string","nullable":true},"nitrate_100":{"type":"string","nullable":true},"silica_100":{"type":"string","nullable":true},"sulphate_100":{"type":"string","nullable":true},"cal_kcal_serving":{"type":"string","nullable":true},"cal_kj_serving":{"type":"string","nullable":true},"calcium_serving":{"type":"string","nullable":true},"carb_serving":{"type":"string","nullable":true},"polyols_carb_serving":{"type":"string","nullable":true},"starch_carb_serving":{"type":"string","nullable":true},"fat_serving":{"type":"string","nullable":true},"sat_fat_serving":{"type":"string","nullable":true},"mono_fat_serving":{"type":"string","nullable":true},"poly_fat_serving":{"type":"string","nullable":true},"fibre_serving":{"type":"string","nullable":true},"folate_serving":{"type":"string","nullable":true},"iron_serving":{"type":"string","nullable":true},"protein_serving":{"type":"string","nullable":true},"salt_serving":{"type":"string","nullable":true},"sodium_serving":{"type":"string","nullable":true},"vitamin_a_serving":{"type":"string","nullable":true},"vitamin_c_serving":{"type":"string","nullable":true},"zinc_serving":{"type":"string","nullable":true},"vitamin_d_serving":{"type":"string","nullable":true},"vitamin_e_serving":{"type":"string","nullable":true},"thiamin_b1_serving":{"type":"string","nullable":true},"riboflavin_b2_serving":{"type":"string","nullable":true},"niacin_b3_serving":{"type":"string","nullable":true},"vitamin_b6_serving":{"type":"string","nullable":true},"vitamin_b12_serving":{"type":"string","nullable":true},"biotin_b7_serving":{"type":"string","nullable":true},"pantothenic_acid_serving":{"type":"string","nullable":true},"potassium_serving":{"type":"string","nullable":true},"chloride_serving":{"type":"string","nullable":true},"phosphorus_serving":{"type":"string","nullable":true},"magnesium_serving":{"type":"string","nullable":true},"copper_serving":{"type":"string","nullable":true},"manganese_serving":{"type":"string","nullable":true},"fluoride_serving":{"type":"string","nullable":true},"selenium_serving":{"type":"string","nullable":true},"iodine_serving":{"type":"string","nullable":true},"bicarbonate_serving":{"type":"string","nullable":true},"nitrate_serving":{"type":"string","nullable":true},"silica_serving":{"type":"string","nullable":true},"sulphate_serving":{"type":"string","nullable":true},"vitamin_k_serving":{"type":"string","nullable":true},"chromium_serving":{"type":"string","nullable":true},"molybdenum_serving":{"type":"string","nullable":true}}},"nutrients_prepared":{"type":"object","properties":{"prepared_product_portion_size":{"type":"string","nullable":true},"prepared_product_details":{"type":"string"},"sugar_carb_prepared":{"type":"string","nullable":true},"sugar_carb_prepared_100":{"type":"string","nullable":true},"cal_kcal_prepared":{"type":"string","nullable":true},"cal_kcal_prepared_100":{"type":"string","nullable":true},"cal_kj_prepared":{"type":"string","nullable":true},"cal_kj_prepared_100":{"type":"string","nullable":true},"calcium_prepared":{"type":"string","nullable":true},"calcium_prepared_100":{"type":"string","nullable":true},"carb_prepared":{"type":"string","nullable":true},"carb_prepared_100":{"type":"string","nullable":true},"polyols_carb_prepared":{"type":"string","nullable":true},"polyols_carb_prepared_100":{"type":"string","nullable":true},"starch_carb_prepared":{"type":"string","nullable":true},"starch_carb_prepared_100":{"type":"string","nullable":true},"fat_prepared":{"type":"string","nullable":true},"fat_prepared_100":{"type":"string","nullable":true},"sat_fat_prepared":{"type":"string","nullable":true},"sat_fat_prepared_100":{"type":"string","nullable":true},"mono_fat_prepared":{"type":"string","nullable":true},"mono_fat_prepared_100":{"type":"string","nullable":true},"poly_fat_prepared":{"type":"string","nullable":true},"poly_fat_prepared_100":{"type":"string","nullable":true},"fibre_prepared":{"type":"string","nullable":true},"fibre_prepared_100":{"type":"string","nullable":true},"folate_prepared":{"type":"string","nullable":true},"folate_prepared_100":{"type":"string","nullable":true},"iron_prepared":{"type":"string","nullable":true},"iron_prepared_100":{"type":"string","nullable":true},"protein_prepared":{"type":"string","nullable":true},"protein_prepared_100":{"type":"string","nullable":true},"salt_prepared":{"type":"string","nullable":true},"salt_prepared_100":{"type":"string","nullable":true},"sodium_prepared":{"type":"string","nullable":true},"sodium_prepared_100":{"type":"string","nullable":true},"vitamin_a_prepared":{"type":"string","nullable":true},"vitamin_a_prepared_100":{"type":"string","nullable":true},"vitamin_c_prepared":{"type":"string","nullable":true},"vitamin_c_prepared_100":{"type":"string","nullable":true},"zinc_prepared":{"type":"string","nullable":true},"zinc_prepared_100":{"type":"string","nullable":true},"vitamin_d_prepared":{"type":"string","nullable":true},"vitamin_d_prepared_100":{"type":"string","nullable":true},"vitamin_e_prepared":{"type":"string","nullable":true},"vitamin_e_prepared_100":{"type":"string","nullable":true},"thiamin_b1_prepared":{"type":"string","nullable":true},"thiamin_b1_prepared_100":{"type":"string","nullable":true},"riboflavin_b2_prepared":{"type":"string","nullable":true},"riboflavin_b2_prepared_100":{"type":"string","nullable":true},"niacin_b3_prepared":{"type":"string","nullable":true},"niacin_b3_prepared_100":{"type":"string","nullable":true},"vitamin_b6_prepared":{"type":"string","nullable":true},"vitamin_b6_prepared_100":{"type":"string","nullable":true},"vitamin_b12_prepared":{"type":"string","nullable":true},"vitamin_b12_prepared_100":{"type":"string","nullable":true},"biotin_b7_prepared":{"type":"string","nullable":true},"biotin_b7_prepared_100":{"type":"string","nullable":true},"pantothenic_acid_prepared":{"type":"string","nullable":true},"pantothenic_acid_prepared_100":{"type":"string","nullable":true},"potassium_prepared":{"type":"string","nullable":true},"potassium_prepared_100":{"type":"string","nullable":true},"chloride_prepared":{"type":"string","nullable":true},"chloride_prepared_100":{"type":"string","nullable":true},"phosphorus_prepared":{"type":"string","nullable":true},"phosphorus_prepared_100":{"type":"string","nullable":true},"magnesium_prepared":{"type":"string","nullable":true},"magnesium_prepared_100":{"type":"string","nullable":true},"copper_prepared":{"type":"string","nullable":true},"copper_prepared_100":{"type":"string","nullable":true},"manganese_prepared":{"type":"string","nullable":true},"manganese_prepared_100":{"type":"string","nullable":true},"fluoride_prepared":{"type":"string","nullable":true},"fluoride_prepared_100":{"type":"string","nullable":true},"selenium_prepared":{"type":"string","nullable":true},"selenium_prepared_100":{"type":"string","nullable":true},"iodine_prepared":{"type":"string","nullable":true},"iodine_prepared_100":{"type":"string","nullable":true},"sulphate_prepared":{"type":"string","nullable":true},"sulphate_prepared_100":{"type":"string","nullable":true},"nitrate_prepared":{"type":"string","nullable":true},"nitrate_prepared_100":{"type":"string","nullable":true},"bicarbonate_prepared":{"type":"string","nullable":true},"bicarbonate_prepared_100":{"type":"string","nullable":true},"silica_prepared":{"type":"string","nullable":true},"silica_prepared_100":{"type":"string","nullable":true},"vitamin_k_prepared":{"type":"string","nullable":true},"vitamin_k_prepared_100":{"type":"string","nullable":true},"chromium_prepared":{"type":"string","nullable":true},"chromium_prepared_100":{"type":"string","nullable":true},"molybdenum_prepared":{"type":"string","nullable":true},"molybdenum_prepared_100":{"type":"string","nullable":true}}},"ingredients":{"type":"object","properties":{"ingredients":{"type":"string"},"ingredients_statements":{"type":"string"},"contains_gm_protein":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_hydro_veg":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"contains_palm_oil":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"cbd_concentration":{"type":"string","nullable":true},"formatted_ingredients":{"type":"string"},"plaintext_ingredients":{"type":"string"}}},"diets":{"type":"object","properties":{"vegan_suitable":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"vegetarian_suitable":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"halal_suitable":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"kosher_suitable":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}}}},"handling":{"type":"object","properties":{"directions_for_use":{"type":"string"},"storage_instructions":{"type":"string"},"storage_instructions_after_opening":{"type":"string"},"shelf_life_once_defrosted":{"type":"string","nullable":true}}},"inner":{"type":"object","properties":{"no_inner_component_present":{"type":"string","nullable":true},"internal_gtin":{"type":"string"},"inner_component_diameter":{"type":"string","nullable":true},"inner_component_weight":{"type":"string","nullable":true},"inner_component_volume":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"},"units_id":{"type":"integer"}}},"inner_component_depth":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"inner_component_width":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"inner_component_height":{"type":"object","properties":{"value":{"type":"integer"},"units":{"type":"string"}}},"net_drained_weight":{"type":"string","nullable":true},"count_per_inner_component":{"type":"string","nullable":true},"e_mark":{"type":"string","nullable":true},"manufacturers_component_code":{"type":"string"}}},"waste_inner":{"type":"object","properties":{"inner_packaging":{"type":"array","items":{"type":"object","properties":{"packaging_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"packaging_weight":{"type":"number"},"recycled_plastic":{"type":"string","nullable":true},"base_material_type":{"type":"object","properties":{"id":{"type":"integer"},"description":{"type":"string"}}},"packaging_returnable":{"type":"string","nullable":true}}}}}},"characteristics":{"type":"object","properties":{"micro_trend_analysis":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"shelf_life_testing":{"type":"object","properties":{"value":{"type":"integer"},"description":{"type":"string"}}},"commercially_sterile":{"type":"string","nullable":true}}},"supplementary_information":{"type":"object","properties":{"closure_type":{"type":"string"},"milk_type":{"type":"string","nullable":true},"pasteurised":{"type":"string","nullable":true}}},"hazard_controls":{"type":"object","properties":{"hazard_metal_detection":{"type":"string","nullable":true},"hazard_optical_sorting":{"type":"string","nullable":true},"hazard_sieving":{"type":"string","nullable":true},"hazard_xray":{"type":"string","nullable":true},"hazard_magnets":{"type":"string","nullable":true},"hazard_filters":{"type":"string","nullable":true}}},"organoleptics":{"type":"object","properties":{"organoleptic_appearance":{"type":"string"},"organoleptic_aroma":{"type":"string"},"organoleptic_taste":{"type":"string"},"organoleptic_texture":{"type":"string"}}},"derived":{"type":"array"},"waste_packaging":{"type":"object","properties":{"inner_packaging_plastic_weight":{"type":"number"},"inner_packaging_paper_cardboard_weight":{"type":"integer"},"inner_packaging_fibre_based_composite_weight":{"type":"integer"},"inner_packaging_aluminium_weight":{"type":"integer"},"inner_packaging_glass_weight":{"type":"integer"},"inner_packaging_steel_weight":{"type":"integer"},"inner_packaging_wood_weight":{"type":"integer"},"inner_packaging_other_weight":{"type":"integer"}}}}}},"waste_packaging":{"type":"object","properties":{"outer_packaging_plastic_weight":{"type":"integer"},"outer_packaging_paper_cardboard_weight":{"type":"integer"},"outer_packaging_fibre_based_composite_weight":{"type":"integer"},"outer_packaging_aluminium_weight":{"type":"integer"},"outer_packaging_glass_weight":{"type":"integer"},"outer_packaging_steel_weight":{"type":"integer"},"outer_packaging_wood_weight":{"type":"integer"},"outer_packaging_other_weight":{"type":"integer"}}}}}}}}}},"404":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string"},"code":{"type":"string"},"title":{"type":"string"},"detail":{"type":"string"}}}}}}}}}},"tags":["Wholesaler Catalogs"]}}}}
```

## Get Catalog Product PDF

> Download Catalog Product PDF.\
> \
> This will return the Erudus PDF specification of the specific version of the product to which the product code is attached in the Wholesaler's catalog.

```json
{"openapi":"3.0.3","info":{"title":"Erudus API","version":"2.0.0"},"tags":[{"name":"Wholesaler Catalogs","description":"\nAccess and manage Wholesaler Product Catalogs.\n\nA Wholesaler Catalog contains products listed by the Wholesaler's own internal product codes.\n\nThese can be attached to specific versions of products and so can therefore be different to the version of the product held as the latest version in the main data pool.\n\nAn API key associated with the relevant wholesaler account is required."}],"servers":[{"url":"https://api.erudus.com"}],"security":[{"default":[]}],"components":{"securitySchemes":{"default":{"type":"http","scheme":"bearer","description":"You can retrieve your token by visiting your dashboard and clicking <b>Manage API tokens</b>."}}},"paths":{"/v2/catalogs/{wholesaler}/pdf/{code}":{"get":{"summary":"Get Catalog Product PDF","operationId":"getCatalogProductPDF","description":"Download Catalog Product PDF.\n\nThis will return the Erudus PDF specification of the specific version of the product to which the product code is attached in the Wholesaler's catalog.","parameters":[],"responses":{"401":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"}}}}}}},"tags":["Wholesaler Catalogs"]}}}}
```

## Add Product Code to Catalog

> Add a Wholesaler Product Code for Erudus product so that it appears in the system as part of a Wholesaler Product Catalog.\
> \
> If you specify a version (e.g. "1.2") the specific version of the product wil be added to your Catalog against the code supplied.

```json
{"openapi":"3.0.3","info":{"title":"Erudus API","version":"2.0.0"},"tags":[{"name":"Wholesaler Catalogs","description":"\nAccess and manage Wholesaler Product Catalogs.\n\nA Wholesaler Catalog contains products listed by the Wholesaler's own internal product codes.\n\nThese can be attached to specific versions of products and so can therefore be different to the version of the product held as the latest version in the main data pool.\n\nAn API key associated with the relevant wholesaler account is required."}],"servers":[{"url":"https://api.erudus.com"}],"security":[{"default":[]}],"components":{"securitySchemes":{"default":{"type":"http","scheme":"bearer","description":"You can retrieve your token by visiting your dashboard and clicking <b>Manage API tokens</b>."}}},"paths":{"/v2/catalogs/{wholesaler}/{product}":{"post":{"summary":"Add Product Code to Catalog","operationId":"addProductCodeToCatalog","description":"Add a Wholesaler Product Code for Erudus product so that it appears in the system as part of a Wholesaler Product Catalog.\n\nIf you specify a version (e.g. \"1.2\") the specific version of the product wil be added to your Catalog against the code supplied.","parameters":[],"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"wholesaler_id":{"type":"integer"},"erudus_id":{"type":"string"},"product_id":{"type":"integer"},"version":{"type":"string"},"version_dismissed":{"type":"string","nullable":true},"component_uuid":{"type":"string","nullable":true},"product_code":{"type":"string"}}}}}}}},"403":{"description":"Action unauthorised.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string"},"code":{"type":"string"},"title":{"type":"string"},"detail":{"type":"string"}}}}}}}}},"422":{"description":"Data incorrect or product/version not found.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string"},"code":{"type":"string"},"title":{"type":"string"},"detail":{"type":"string"},"source":{"type":"string"}}}}}}}}}},"tags":["Wholesaler Catalogs"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"product_code":{"type":"string","description":"A new wholesaler product code."},"version":{"type":"string","description":"The specific version of the product."},"component_uuid":{"type":"string","description":"The uuid for the inner component if appropriate."}},"required":["product_code"]}}}}}}}}
```

## Remove Product Code from Catalog

> Remove a Wholesaler Product Code from catalog.

```json
{"openapi":"3.0.3","info":{"title":"Erudus API","version":"2.0.0"},"tags":[{"name":"Wholesaler Catalogs","description":"\nAccess and manage Wholesaler Product Catalogs.\n\nA Wholesaler Catalog contains products listed by the Wholesaler's own internal product codes.\n\nThese can be attached to specific versions of products and so can therefore be different to the version of the product held as the latest version in the main data pool.\n\nAn API key associated with the relevant wholesaler account is required."}],"servers":[{"url":"https://api.erudus.com"}],"security":[{"default":[]}],"components":{"securitySchemes":{"default":{"type":"http","scheme":"bearer","description":"You can retrieve your token by visiting your dashboard and clicking <b>Manage API tokens</b>."}}},"paths":{"/v2/catalogs/{wholesaler}/{product}/{code}":{"delete":{"summary":"Remove Product Code from Catalog","operationId":"removeProductCodeFromCatalog","description":"Remove a Wholesaler Product Code from catalog.","parameters":[],"responses":{"204":{"description":"Success","content":{"text/plain":{"schema":{"type":"string"}}}},"403":{"description":"Action unauthorised.","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string"},"code":{"type":"string"},"title":{"type":"string"},"detail":{"type":"string"}}}}}}}}},"404":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string"},"code":{"type":"string"},"title":{"type":"string"},"detail":{"type":"string"}}}}}}}}}},"tags":["Wholesaler Catalogs"]}}}}
```
