Mirakl Taxonomy API

The Taxonomy API from Mirakl — 2 operation(s) for taxonomy.

Operations 2

PUT /v1/taxonomy/channels/{channel_id}/rules createTaxonomyRule - Create a Taxonomy Rule #
PUT /v1/taxonomy/channels/{channel_id}/product-types upsertProductType - Create or Update a Product Type #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mirakl-taxonomy-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mirakl-taxonomy-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: '{% partial file="/partial-content/product/connect-channel-platform/rest/connect/openapi-description.md" /%}'
  title: Mirakl Connect Channel Platform Taxonomy API
  version: ''
servers:
- description: Connect Channel Platform API
  url: https://miraklconnect.com/api/channel-platform
tags:
- name: Taxonomy
paths:
  /v1/taxonomy/channels/{channel_id}/rules:
    put:
      description: '<div class="api-description-extension">

        <div class="extension-title">Call Frequency</div>


        <div class="recommended-call-frequency">Recommended usage: 5 per second</div>

        <div class="max-call-frequency">Maximum usage: 10 per second</div>

        </div>'
      operationId: createTaxonomyRule
      parameters:
      - $ref: '#/components/parameters/channel_id_path'
      requestBody:
        content:
          application/json; charset=UTF-8:
            examples:
              application/json; charset=UTF-8-0:
                summary: Example of a taxonomy rule
                value: "{\n    \"rules\": [\n        {\n            \"id\": \"rule-smartphones\",\n            \"when\": {\n                \"all\": [\n                    {\n                        \"equals\": {\n                            \"attribute\": \"model\",\n                            \"value\": \"samsung-galaxy-s21\"\n                        }\n                    },\n                    {\n                        \"not\": {\n                            \"isSet\": {\n                                \"attribute\": \"color\"\n                            }\n                        }\n                    }\n                ]\n            },\n            \"then\": {\n                \"all\": [\n                    {\n                        \"redefine\": {\n                            \"attribute\": \"samsung-special-color\",\n                            \"requirementLevel\": \"REQUIRED\"\n                        }\n                    }\n                ]\n            }\n        }\n    ]\n}\n"
              application/json; charset=UTF-8-auto:
                summary: Complete example with value types (application/json; charset=utf-8)
                value:
                  rules:
                  - id: rule-1234
                    when: object
                    then:
                      all:
                      - redefine:
                          attribute: COLOR
                          requirementLevel: OPTIONAL
            schema:
              $ref: '#/components/schemas/TaxonomyRuleRequest'
        required: true
      responses:
        '202':
          description: Accepted
      security:
      - Bearer:
        - connect-channel-platform:taxonomy-rule:create
      summary: createTaxonomyRule - Create a Taxonomy Rule
      tags:
      - Taxonomy
  /v1/taxonomy/channels/{channel_id}/product-types:
    put:
      description: '<div class="extension-title">Description</div>


        Creates or fully replaces a Product Type for the specified channel.


        **Behavior:**

        - **Full replacement (PUT semantics):** the entire product type definition (including all embedded attributes, their value lists, and rule references) is replaced with the content of this request. Any attribute, value list entry, or rule reference not present in the request body will be removed.

        - **Always provide the complete product type definition in every request**, even when only a subset of attributes or rules needs to change.

        - This is an asynchronous operation - the request is accepted and processed in the background.



        <div class="api-description-extension">

        <div class="extension-title">Call Frequency</div>


        <div class="recommended-call-frequency">Recommended usage: 5 per second</div>

        <div class="max-call-frequency">Maximum usage: 10 per second</div>

        </div>'
      operationId: upsertProductType
      parameters:
      - $ref: '#/components/parameters/channel_id_path'
      - description: The unique identifier of the product type, which may contain special characters like slashes.
        explode: true
        in: query
        name: product_type_id
        required: true
        schema:
          $ref: '#/components/schemas/ProductTypeId'
        style: form
      - description: 'Store identifier scoping this product type to a specific store.


          When provided, the product type is pushed at store-level granularity instead of channel-level.

          **This granularity is not enabled by default: contact Mirakl technical teams beforehand.**

          '
        explode: true
        in: query
        name: store_id
        required: false
        schema:
          $ref: '#/components/schemas/StoreId'
        style: form
      requestBody:
        content:
          application/json; charset=UTF-8:
            examples:
              application/json; charset=UTF-8-0:
                summary: Product Type 'Smartphones' on a fake channel (dummy example)
                value: "{\n    \"labels\": [\n        {\n            \"locale\": \"en\",\n            \"value\": \"Smartphones\"\n        },\n        {\n            \"locale\": \"fr\",\n            \"value\": \"Smartphones\"\n        }\n    ],\n    \"context\": {\n        \"labels\": [\n            {\n                \"locale\": \"en\",\n                \"value\": \"Electronics / Mobile Devices / Smartphones\"\n            },\n            {\n                \"locale\": \"fr\",\n                \"value\": \"Électronique / Appareils Mobiles / Smartphones\"\n            }\n        ]\n    },\n    \"embedded_attributes\": [\n        {\n            \"id\": \"recommended_browse_nodes\",\n            \"requirement_level\": \"REQUIRED\",\n            \"type\": \"List\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Browse Nodes\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Catégories\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Classification / Browse Nodes\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Classification / Catégories\"\n                    }\n                ],\n                \"path\": \"$.recommended_browse_nodes\"\n            },\n            \"available_values\": [\n                {\n                    \"id\": \"340320031\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Mobile Phones\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Téléphones Mobiles\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"541546121\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Phones\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Téléphones\"\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"id\": \"Brand\",\n            \"requirement_level\": \"REQUIRED\",\n            \"type\": \"List\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Brand\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Marque\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Product Information / Brand\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Information Produit / Marque\"\n                    }\n                ],\n                \"path\": \"$.brand\"\n            },\n            \"connect_standard_attributes\": [\n                \"BRAND\"\n            ],\n            \"available_values\": [\n                {\n                    \"id\": \"APPLE\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Apple\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Apple\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"SAMSUNG\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Samsung\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Samsung\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"XIAOMI\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Xiaomi\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Xiaomi\"\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"id\": \"COLOR\",\n            \"requirement_level\": \"RECOMMENDED\",\n            \"type\": \"List\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Color\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Couleur\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Physical Characteristics / Color\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Caractéristiques Physiques / Couleur\"\n                    }\n                ],\n                \"path\": \"$.color\"\n            },\n            \"available_values\": [\n                {\n                    \"id\": \"BLACK\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Black\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Noir\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"WHITE\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"White\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Blanc\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"GOLD\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Gold\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Or\"\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"id\": \"Mobile_OS\",\n            \"requirement_level\": \"RECOMMENDED\",\n            \"type\": \"List\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Mobile OS\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Système d'exploitation\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Technical Specifications / Operating System\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Spécifications Techniques / Système d'exploitation\"\n                    }\n                ],\n                \"path\": \"$.mobile_os\"\n            },\n            \"available_values\": [\n                {\n                    \"id\": \"ANDROID\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Android\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Android\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"IOS\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"iOS\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"iOS\"\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"id\": \"Mobile_OS_version\",\n            \"requirement_level\": \"RECOMMENDED\",\n            \"type\": \"Text\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"OS Version\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Version OS\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Technical Specifications / OS Version\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Spécifications Techniques / Version OS\"\n                    }\n                ],\n                \"path\": \"$.mobile_os_version\"\n            }\n        },\n        {\n            \"id\": \"main_image\",\n            \"requirement_level\": \"REQUIRED\",\n            \"type\": \"Media\",\n            \"media_type\": \"IMAGE\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Main image\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Image principale\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Media / Product Images / Main Image\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Média / Images Produit / Image Principale\"\n                    }\n                ],\n                \"path\": \"$.main_image\"\n            },\n            \"descriptions\": [],\n            \"connect_standard_attributes\": [\n                \"IMAGE\"\n            ]\n        }\n    ],\n    \"rules\": [\n        {\n            \"ref\": \"rule-smartphones\"\n        }\n    ]\n}\n"
              application/json; charset=UTF-8-1:
                summary: Product Type 'Smartphones' on another fake channel (dummy example)
                value: "{\n    \"labels\": [\n        {\n            \"locale\": \"en\",\n            \"value\": \"Smartphones\"\n        },\n        {\n            \"locale\": \"fr\",\n            \"value\": \"Smartphones\"\n        }\n    ],\n    \"context\": {\n        \"labels\": [\n            {\n                \"locale\": \"en\",\n                \"value\": \"Electronics / Mobile Devices / Smartphones\"\n            },\n            {\n                \"locale\": \"fr\",\n                \"value\": \"Électronique / Appareils Mobiles / Smartphones\"\n            }\n        ]\n    },\n    \"embedded_attributes\": [\n        {\n            \"id\": \"Brand\",\n            \"requirement_level\": \"REQUIRED\",\n            \"type\": \"List\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Brand\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Marque\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Product Information / Brand\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Information Produit / Marque\"\n                    }\n                ],\n                \"path\": \"$.brand\"\n            },\n            \"connect_standard_attributes\": [\n                \"BRAND\"\n            ],\n            \"available_values\": [\n                {\n                    \"id\": \"APPLE\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Apple\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Apple\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"SAMSUNG\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Samsung\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Samsung\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"XIAOMI\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Xiaomi\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Xiaomi\"\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"id\": \"Mobile_OS\",\n            \"requirement_level\": \"REQUIRED\",\n            \"type\": \"List\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Mobile OS\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Système d'exploitation\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Technical Specifications / Operating System\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Spécifications Techniques / Système d'exploitation\"\n                    }\n                ],\n                \"path\": \"$.mobile_os\"\n            },\n            \"available_values\": [\n                {\n                    \"id\": \"ANDROID\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"Android\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"Android\"\n                        }\n                    ]\n                },\n                {\n                    \"id\": \"IOS\",\n                    \"labels\": [\n                        {\n                            \"locale\": \"en\",\n                            \"value\": \"iOS\"\n                        },\n                        {\n                            \"locale\": \"fr\",\n                            \"value\": \"iOS\"\n                        }\n                    ]\n                }\n            ]\n        },\n        {\n            \"id\": \"main_video\",\n            \"requirement_level\": \"REQUIRED\",\n            \"type\": \"Media\",\n            \"media_type\": \"OTHER\",\n            \"labels\": [\n                {\n                    \"locale\": \"en\",\n                    \"value\": \"Main video\"\n                },\n                {\n                    \"locale\": \"fr\",\n                    \"value\": \"Vidéo principale\"\n                }\n            ],\n            \"context\": {\n                \"labels\": [\n                    {\n                        \"locale\": \"en\",\n                        \"value\": \"Media / Product Videos / Main Video\"\n                    },\n                    {\n                        \"locale\": \"fr\",\n                        \"value\": \"Média / Vidéos Produit / Vidéo Principale\"\n                    }\n                ],\n                \"path\": \"$.main_video\"\n            },\n            \"descriptions\": [],\n            \"connect_standard_attributes\": [\n                \"BRAND\"\n            ]\n        }\n    ],\n    \"rules\": [\n        {\n            \"ref\": \"rule-smartphones\"\n        }\n    ]\n}\n"
              application/json; charset=UTF-8-auto:
                summary: Complete example with value types (application/json; charset=utf-8)
                value:
                  labels:
                  - locale: en_US
                    value: string
                  context:
                    labels:
                    - locale: en_US
                      value: string
                  embedded_attributes:
                  - id: COLOR
                    requirement_level: OPTIONAL
                    type: Text
                    connect_standard_attributes:
                    - PRODUCT_ID
                    labels:
                    - locale: en_US
                      value: string
                    context:
                      path: string
                      labels:
                      - locale: en_US
                        value: string
                    descriptions:
                    - locale: en_US
                      value: string
                  rules:
                  - ref: rule-1234
            schema:
              $ref: '#/components/schemas/ProductType'
        required: true
      responses:
        '202':
          description: Accepted
        '401':
          description: The channel is not configured to allow the requested taxonomy granularity (channel-level or store-level).
        '404':
          description: Channel not found, or store not found when `store_id` is provided.
      security:
      - Bearer:
        - connect-channel-platform:taxonomy-product-type:upsert
      summary: upsertProductType - Create or Update a Product Type
      tags:
      - Taxonomy
components:
  schemas:
    ProductTypeRuleConditionEquals:
      type: object
      description: A condition that checks if a specific attribute equals a given value
      properties:
        equals:
          $ref: '#/components/schemas/EqualsRuleConditionPayload'
      required:
      - equals
      title: Equals
    ConnectStandardAttribute:
      type: string
      description: 'Equivalent of the attribute in Connect standard taxonomy


        Enum: `"PRODUCT_ID"`, `"CATEGORY"`, `"BRAND"`, `"TITLE"`, `"DESCRIPTION"`, `"IMAGE"`, `"GTIN"`, `"VARIANT_GROUP_CODE"`

        '
    EmbeddedAttribute:
      type: object
      discriminator:
        mapping:
          Decimal: '#/components/schemas/EmbeddedDecimalAttribute'
          Integer: '#/components/schemas/EmbeddedIntegerAttribute'
          List: '#/components/schemas/EmbeddedListAttribute'
          Media: '#/components/schemas/EmbeddedMediaAttribute'
          Text: '#/components/schemas/EmbeddedTextAttribute'
        propertyName: type
      properties:
        connect_standard_attributes:
          type: array
          description: "Map one attribute per standard type (e.g., your main image attribute to IMAGE). \nFor multi-lingual catalogs, multiple locale-specific attributes may map to TITLE and DESCRIPTION.\n"
          items:
            $ref: '#/components/schemas/ConnectStandardAttribute'
        context:
          $ref: '#/components/schemas/AttributeContext'
        descriptions:
          type: array
          description: Additional attribute descriptions with their associated locale
          items:
            $ref: '#/components/schemas/Localized'
        id:
          $ref: '#/components/schemas/ProductAttributeId'
        labels:
          type: array
          description: Labels for the attribute with their associated locale
          items:
            $ref: '#/components/schemas/Localized'
          minItems: 1
        requirement_level:
          $ref: '#/components/schemas/RequirementLevel'
        type:
          $ref: '#/components/schemas/ProductAttributeType'
      required:
      - descriptions
      - id
      - labels
      - requirement_level
      - type
    ProductTypeRule:
      type: object
      description: A rule associated with the product type
      properties:
        id:
          type: string
          description: Unique identifier of the rule
          example: rule-1234
        then:
          $ref: '#/components/schemas/ProductTypeRuleActionAll'
        when:
          $ref: '#/components/schemas/ProductTypeRuleCondition'
      required:
      - id
      - then
      - when
    ProductTypeRuleActionRedefineAttribute:
      type: object
      description: An action to redefine an attribute's properties
      properties:
        redefine:
          $ref: '#/components/schemas/RedefineAttributeActionPayload'
      required:
      - redefine
      title: Redefine attribute
    ProductTypeRuleConditionNot:
      type: object
      description: A condition that must not be met to trigger the rule
      properties:
        not:
          $ref: '#/components/schemas/ProductTypeRuleCondition'
      required:
      - not
      title: Not
    ProductTypeRuleActionAll:
      type: object
      description: A set of actions to apply when the rule is triggered
      properties:
        all:
          type: array
          description: List of actions to apply
          items:
            $ref: '#/components/schemas/ProductTypeRuleActionRedefineAttribute'
      required:
      - all
    ProductTypeRuleCondition:
      description: Condition to trigger the rule
      oneOf:
      - $ref: '#/components/schemas/ProductTypeRuleConditionAll'
      - $ref: '#/components/schemas/ProductTypeRuleConditionAny'
      - $ref: '#/components/schemas/ProductTypeRuleConditionNot'
      - $ref: '#/components/schemas/ProductTypeRuleConditionIsSet'
      - $ref: '#/components/schemas/ProductTypeRuleConditionEquals'
      - $ref: '#/components/schemas/ProductTypeRuleConditionIn'
    StoreId:
      type: string
      description: Store identifier in the channel
      minLength: 1
    ProductTypeRuleReference:
      type: object
      description: A reference to a rule associated with the product type
      properties:
        ref:
          type: string
          description: The unique identifier of the referenced rule
          examples:
          - rule-1234
      required:
      - ref
    ProductTypeRuleConditionAny:
      type: object
      description: A set of conditions where at least one must be met to trigger the rule
      properties:
        any:
          type: array
          description: List of conditions where at least one must be satisfied
          items:
            $ref: '#/components/schemas/ProductTypeRuleCondition'
      required:
      - any
      title: Any
    ProductTypeId:
      type: string
      description: Anything that uniquely identifies the product type.
      examples:
      - Smartphones
      maxLength: 255
      minLength: 1
    ProductTypeRuleConditionIn:
      type: object
      description: A condition that checks if a specific attribute's value is in a given list of
      properties:
        in:
          $ref: '#/components/schemas/InRuleConditionPayload'
      required:
      - in
      title: In
    ProductAttributeId:
      type: string
      description: Anything that uniquely identifies the product attribute.
      examples:
      - COLOR
      maxLength: 255
      minLength: 1
    ProductTypeRuleConditionIsSet:
      type: object
      description: A condition that checks if a specific attribute is set
      properties:
        isSet:
          $ref: '#/components/schemas/IsSetRuleConditionPayload'
      required:
      - isSet
      title: IsSet
    ProductType:
      type: object
      properties:
        context:
          $ref: '#/components/schemas/ProductTypeContext'
        embedded_attributes:
          type: array
          description: List of embedded attributes for the product type
          items:
            $ref: '#/components/schemas/EmbeddedAttribute'
        labels:
          type: array
          description: List of labels for the product type
          items:
            $ref: '#/components/schemas/Localized'
          minItems: 1
        rules:
          type: array
          description: List of rules associated with the product type
          items:
            $ref: '#/components/schemas/ProductTypeRuleReference'
      required:
      - embedded_attributes
      - labels
    IsSetRuleConditionPayload:
      type: object
      properties:
        attribute:
          $ref: '#/components/schemas/ProductAttributeId'
      required:
      - attribute
    ProductTypeRuleConditionAll:
      type: object
      description: A set of conditions that must all be met to trigger the rule
      properties:
        all:
          type: array
          description: List of conditions to satisfy
          items:
            $ref: '#/components/schemas/ProductTypeRuleCondition'
      required:
      - all
      title: All
    Locale:
      type: string
      description: The language format can be ISO-639 or ISO-639_ISO-3166
      examples:
      - en_US
    TaxonomyRuleRequest:
      type: object
      description: Request to create a taxonomy rule
      properties:
        rules:
          type: array
          description: List of rules to create
          items:
            $ref: '#/components/schemas/ProductTypeRule'
          minItems: 1
      required:
      - rules
    InRuleConditionPayloadValue:
      oneOf:
      - type: string
      - type: number
      - type: boolean
    RequirementLevel:
      type: string
      description: 'Requirement level of the attribute when creating or updating a product


        Enum: `"OPTIONAL"`, `"RECOMMENDED"`, `"REQUIRED"`

        '
    Localized:
      type: object
      properties:
        locale:
          $ref: '#/components/schemas/Locale'
        value:
          type: string
          description: The localized value in this locale
      required:
      - locale
      - value
    ProductTypeContext:
      type: object
      description: "Additional context information about where this product type label is located within \nthe marketplace's data structure. This helps with catalog transformation.\n"
      properties:
        labels:
          type: array
          description: List of labels context for the product type
          items:
            $ref: '#/components/schemas/Localized'
    ProductAttributeType:
      type: string
      description: 'Each type of attributes has a different set of properties


        Enum: `"Text"`

# --- truncated at 32 KB (34 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mirakl/refs/heads/main/openapi/mirakl-taxonomy-api-openapi.yml