{
  "openapi": "3.1.0",
  "info": {
    "title": "Product-tree",
    "version": "9dfbac0fd9b2",
    "summary": "DgCore platform API surface for the Product-tree domain.",
    "description": "The Product-tree domain: 51 operations across 9 resource groups.\n\nThis is the published contract, not a description of a running deployment: the environment\nyou were granted may carry operations this document does not, and may not carry every\noperation listed here."
  },
  "servers": [
    {
      "url": "https://{gateway}/product-tree-service",
      "description": "The full route is `https://<gateway>/product-tree-service/<path>`. The service segment is fixed; the gateway host is the one you were granted. Substitute it below.",
      "variables": {
        "gateway": {
          "default": "gateway.example"
        }
      }
    }
  ],
  "tags": [
    {
      "name": "batch",
      "description": "Operations addressed under `/batch` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "batch-catalog",
      "description": "Operations addressed under `/batch-catalog` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "caches",
      "description": "Operations addressed under `/caches` — 2 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "compensating-transactions",
      "description": "Operations addressed under `/compensating-transactions` — 2 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "ef-migrations",
      "description": "Operations addressed under `/ef-migrations` — 1 operation.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "kernel",
      "description": "Operations addressed under `/kernel` — 2 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "key-formats",
      "description": "Operations addressed under `/key-formats` — 11 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "localizations",
      "description": "Operations addressed under `/localizations` — 10 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    },
    {
      "name": "parameters",
      "description": "Operations addressed under `/parameters` — 21 operations.",
      "x-aura-documentation": {
        "language": "en",
        "status": "structural-fallback",
        "source": "catalog-structure"
      }
    }
  ],
  "paths": {
    "/batch": {
      "post": {
        "operationId": "product-tree-batch",
        "tags": [
          "batch"
        ],
        "summary": "product-tree-batch",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "capacity": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "capacity"
                  },
                  "item": {
                    "type": "object",
                    "properties": {
                      "body": {
                        "type": "object",
                        "x-aura-field-code": "body"
                      },
                      "operationType": {
                        "x-aura-type": "unresolved"
                      },
                      "path": {
                        "type": "string",
                        "x-aura-field-code": "path"
                      }
                    },
                    "required": [
                      "body",
                      "operationType",
                      "path"
                    ],
                    "x-aura-field-code": "item"
                  }
                },
                "required": [
                  "capacity",
                  "item"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-batch",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "batch",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route declares `IEnumerable<object>`. `object` is the C# base type, so the code states that a body is returned and declines to say what is in it — the shape is chosen at runtime, and the body is a JSON array whose elements need not share a shape. That is the declaration, not a failure to read it, and nothing here narrows it.",
          "declared_type": "IEnumerable<object>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "object"
        }
      }
    },
    "/batch-catalog": {
      "post": {
        "operationId": "product-tree-batch-catalog",
        "tags": [
          "batch-catalog"
        ],
        "summary": "product-tree-batch-catalog",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "capacity": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "capacity"
                  },
                  "item": {
                    "type": "object",
                    "properties": {
                      "sequenceNumber": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "sequenceNumber"
                      },
                      "serviceCode": {
                        "type": "string",
                        "x-aura-field-code": "serviceCode"
                      },
                      "variables": {
                        "type": "object",
                        "properties": {
                          "item": {
                            "type": "object",
                            "x-aura-field-code": "item"
                          },
                          "keys": {
                            "x-aura-type": "unresolved"
                          },
                          "values": {
                            "x-aura-type": "unresolved"
                          }
                        },
                        "required": [
                          "item",
                          "keys",
                          "values"
                        ],
                        "x-aura-field-code": "variables"
                      }
                    },
                    "required": [
                      "sequenceNumber",
                      "serviceCode",
                      "variables"
                    ],
                    "x-aura-field-code": "item"
                  }
                },
                "required": [
                  "capacity",
                  "item"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-batch-catalog",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "batch-catalog",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route declares `IEnumerable<object>`. `object` is the C# base type, so the code states that a body is returned and declines to say what is in it — the shape is chosen at runtime, and the body is a JSON array whose elements need not share a shape. That is the declaration, not a failure to read it, and nothing here narrows it.",
          "declared_type": "IEnumerable<object>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "object"
        }
      }
    },
    "/caches/keys": {
      "get": {
        "operationId": "product-tree-get-cache-key-list",
        "tags": [
          "caches"
        ],
        "summary": "product-tree-get-cache-key-list",
        "parameters": [
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 4
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. It returns a collection of records — but the record's fields are not declared.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-cache-key-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "caches/keys",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CacheKeyDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CacheKeyDto",
          "collection": true,
          "members": [
            {
              "name": "Key",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsSharedBetweenApplications",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsSharedBetweenTenants",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Mode",
              "declared_type": "CacheMode",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/caches/refresh": {
      "post": {
        "operationId": "product-tree-refresh-cache",
        "tags": [
          "caches"
        ],
        "summary": "product-tree-refresh-cache",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isSharedBetweenApplications": {
                    "type": "boolean",
                    "x-aura-field-code": "isSharedBetweenApplications"
                  },
                  "isSharedBetweenTenants": {
                    "type": "boolean",
                    "x-aura-field-code": "isSharedBetweenTenants"
                  },
                  "key": {
                    "x-aura-type": "unresolved"
                  },
                  "mode": {
                    "x-aura-type": "unresolved"
                  }
                },
                "required": [
                  "isSharedBetweenApplications",
                  "isSharedBetweenTenants",
                  "key",
                  "mode"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 4,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-refresh-cache",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "caches/refresh",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<RefreshCacheDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "RefreshCacheDto",
          "collection": true,
          "members": [
            {
              "name": "Key",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsSuccess",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_AURA_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "CACHE_REFRESH_INPUT_MISSING"
            }
          ]
        }
      }
    },
    "/compensating-transactions/commit": {
      "post": {
        "operationId": "product-tree-commit-compensating-transaction",
        "tags": [
          "compensating-transactions"
        ],
        "summary": "product-tree-commit-compensating-transaction",
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-commit-compensating-transaction",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "compensating-transactions/commit",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/compensating-transactions/rollback": {
      "post": {
        "operationId": "product-tree-rollback-compensating-transaction",
        "tags": [
          "compensating-transactions"
        ],
        "summary": "product-tree-rollback-compensating-transaction",
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-rollback-compensating-transaction",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "compensating-transactions/rollback",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        }
      }
    },
    "/ef-migrations": {
      "get": {
        "operationId": "get-ef-migration-history-list",
        "tags": [
          "ef-migrations"
        ],
        "summary": "get-ef-migration-history-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "x-aura-type": "unresolved"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. It returns a collection of records — but the record's fields are not declared.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "get-ef-migration-history-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "ef-migrations",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "List<EfMigrationHistoryDto>",
          "envelopes": [
            "List"
          ],
          "payload": "EfMigrationHistoryDto",
          "collection": true,
          "members": [
            {
              "name": "MigrationId",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ProductVersion",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/kernel/compensating-events": {
      "get": {
        "operationId": "product-tree-get-compensating-event-list",
        "tags": [
          "kernel"
        ],
        "summary": "product-tree-get-compensating-event-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "x-aura-type": "unresolved"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. It returns a collection of records — but the record's fields are not declared.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-compensating-event-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "kernel/compensating-events",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<CompensatingEventDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "CompensatingEventDto",
          "collection": true,
          "members": [
            {
              "name": "EventId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CorrelationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EventType",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EventPayload",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "StateCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CreatedDate",
              "declared_type": "DateTime",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      }
    },
    "/kernel/compensating-events/{id}": {
      "get": {
        "operationId": "product-tree-get-compensating-event-by-id",
        "tags": [
          "kernel"
        ],
        "summary": "product-tree-get-compensating-event-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-compensating-event-by-id",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "kernel/compensating-events/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "CompensatingEventDto",
          "payload": "CompensatingEventDto",
          "collection": false,
          "members": [
            {
              "name": "EventId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CorrelationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EventType",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "EventPayload",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "StateCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "CreatedDate",
              "declared_type": "DateTime",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_CMPNSTNG_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "COMPENSATING_EVENT_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/key-formats": {
      "get": {
        "operationId": "product-tree-get-key-format-list",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-get-key-format-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "x-aura-type": "unresolved"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. It returns a collection of records — but the record's fields are not declared.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-key-format-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<KeyFormatDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "KeyFormatDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "MaxLength",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "product-tree-create-key-format",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-create-key-format",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "x-aura-type": "unresolved"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "maxLength": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "maxLength"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "description": {
                          "x-aura-type": "unresolved"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "description",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "code",
                  "isActive",
                  "maxLength",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 4,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-key-format",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_7",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_CODE_DUPLICATED"
            }
          ]
        }
      }
    },
    "/key-formats/by-code/{code}": {
      "get": {
        "operationId": "product-tree-get-key-format-id-by-code",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-get-key-format-id-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-key-format-id-by-code",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/by-code/{code}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `Guid`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string holding a UUID. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "Guid",
          "payload": "Guid"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_CODE"
            }
          ]
        }
      }
    },
    "/key-formats/by-code/{code}/generate": {
      "post": {
        "operationId": "product-tree-generate-key",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-generate-key",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "itemValues": {
                    "type": "object",
                    "properties": {
                      "item": {
                        "type": "object",
                        "x-aura-field-code": "item"
                      },
                      "keys": {
                        "x-aura-type": "unresolved"
                      },
                      "values": {
                        "x-aura-type": "unresolved"
                      }
                    },
                    "required": [
                      "item",
                      "keys",
                      "values"
                    ],
                    "x-aura-field-code": "itemValues"
                  }
                },
                "required": [
                  "itemValues"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-generate-key",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/by-code/{code}/generate",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `string`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "string",
          "payload": "string"
        }
      }
    },
    "/key-formats/by-code/{code}/reset-counter": {
      "put": {
        "operationId": "product-tree-reset-key-format-counter-by-code",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-reset-key-format-counter-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-reset-key-format-counter-by-code",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/by-code/{code}/reset-counter",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_CODE"
            }
          ]
        }
      }
    },
    "/key-formats/{id}": {
      "get": {
        "operationId": "product-tree-get-key-format-by-id",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-get-key-format-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-key-format-by-id",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "KeyFormatDto",
          "payload": "KeyFormatDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Description",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "MaxLength",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_16",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_ID"
            }
          ]
        }
      },
      "put": {
        "operationId": "product-tree-update-key-format",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-update-key-format",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "maxLength": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "maxLength"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "description": {
                          "x-aura-type": "unresolved"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "description",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "isActive",
                  "maxLength",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-update-key-format",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_16",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_ID"
            }
          ]
        }
      }
    },
    "/key-formats/{id}/item-summaries": {
      "get": {
        "operationId": "product-tree-get-key-format-item-id-by-key-format-id",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-get-key-format-item-id-by-key-format-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-key-format-item-id-by-key-format-id",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/{id}/item-summaries",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "KeyFormatItemSummaryListDto",
          "payload": "KeyFormatItemSummaryListDto",
          "collection": false,
          "members": [
            {
              "name": "ItemList",
              "declared_type": "IEnumerable<KeyFormatItemSummaryDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_16",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_ID"
            }
          ]
        }
      }
    },
    "/key-formats/{id}/items": {
      "get": {
        "operationId": "product-tree-get-key-format-item-by-key-format-id",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-get-key-format-item-by-key-format-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-key-format-item-by-key-format-id",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/{id}/items",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "KeyFormatItemListDto",
          "payload": "KeyFormatItemListDto",
          "collection": false,
          "members": [
            {
              "name": "ItemList",
              "declared_type": "IEnumerable<KeyFormatItemDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_16",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_ID"
            }
          ]
        }
      },
      "post": {
        "operationId": "product-tree-create-key-format-item",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-create-key-format-item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "itemList": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "defaultValue": {
                          "type": "string",
                          "x-aura-field-code": "defaultValue"
                        },
                        "hasPadding": {
                          "type": "boolean",
                          "x-aura-field-code": "hasPadding"
                        },
                        "itemLength": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "itemLength"
                        },
                        "itemSequence": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "itemSequence"
                        },
                        "itemValue": {
                          "type": "string",
                          "x-aura-field-code": "itemValue"
                        },
                        "resetValue": {
                          "type": "integer",
                          "format": "int32",
                          "x-aura-field-code": "resetValue"
                        },
                        "seperator": {
                          "type": "string",
                          "x-aura-field-code": "seperator"
                        },
                        "translations": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "languageCode": {
                                "type": "string",
                                "x-aura-field-code": "languageCode"
                              },
                              "name": {
                                "x-aura-type": "unresolved"
                              }
                            },
                            "required": [
                              "languageCode",
                              "name"
                            ],
                            "x-aura-field-code": "translations"
                          }
                        },
                        "type": {
                          "x-aura-type": "unresolved"
                        }
                      },
                      "required": [
                        "defaultValue",
                        "hasPadding",
                        "itemLength",
                        "itemSequence",
                        "itemValue",
                        "resetValue",
                        "seperator",
                        "translations",
                        "type"
                      ],
                      "x-aura-field-code": "itemList"
                    }
                  }
                },
                "required": [
                  "itemList"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-key-format-item",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/{id}/items",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "CreateKeyFormatItemListDto",
          "payload": "CreateKeyFormatItemListDto",
          "collection": false,
          "members": [
            {
              "name": "ItemList",
              "declared_type": "IEnumerable<CreateKeyFormatItemDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_16",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_ID"
            }
          ]
        }
      }
    },
    "/key-formats/{id}/items/{itemId}": {
      "delete": {
        "operationId": "product-tree-delete-key-format-item",
        "tags": [
          "key-formats"
        ],
        "summary": "product-tree-delete-key-format-item",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "itemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "itemId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-delete-key-format-item",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "key-formats/{id}/items/{itemId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_KYGNR_16",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_FOUND_BY_ID"
            },
            {
              "code": "ERR_KYGNR_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "KEY_FORMAT_NOT_EXIST_ITEMS"
            }
          ]
        }
      }
    },
    "/localizations": {
      "get": {
        "operationId": "product-tree-get-localization-list",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-get-localization-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "x-aura-type": "unresolved"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. It returns a collection of records — but the record's fields are not declared.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-localization-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<LocalizationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "LocalizationDto",
          "collection": true,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "product-tree-create-localization",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-create-localization",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "x-aura-type": "unresolved"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  },
                  "type": {
                    "x-aura-type": "unresolved"
                  }
                },
                "required": [
                  "code",
                  "translations",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-localization",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/by-code/{code}": {
      "get": {
        "operationId": "product-tree-get-localization-by-code",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-get-localization-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-localization-by-code",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/by-code/{code}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "LocalizationDto",
          "payload": "LocalizationDto",
          "collection": false,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}": {
      "delete": {
        "operationId": "product-tree-delete-localization",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-delete-localization",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-delete-localization",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "get": {
        "operationId": "product-tree-get-localization-by-id",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-get-localization-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-localization-by-id",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "LocalizationDto",
          "payload": "LocalizationDto",
          "collection": false,
          "members": [
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Type",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<LocalizationTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "put": {
        "operationId": "product-tree-update-localization",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-update-localization",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  },
                  "type": {
                    "x-aura-type": "unresolved"
                  }
                },
                "required": [
                  "translations",
                  "type"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-update-localization",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}/translations": {
      "get": {
        "operationId": "product-tree-get-localization-translation-by-localization-id",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-get-localization-translation-by-localization-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. It returns a collection of records — but the record's fields are not declared.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-localization-translation-by-localization-id",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/{id}/translations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<LocalizationTranslationDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "LocalizationTranslationDto",
          "collection": true,
          "members": [
            {
              "name": "TranslationId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "LanguageCode",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "post": {
        "operationId": "product-tree-create-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-create-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-localization-translation",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/{id}/translations",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/localizations/{id}/translations/{translationId}": {
      "delete": {
        "operationId": "product-tree-delete-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-delete-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "translationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "translationId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-delete-localization-translation",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/{id}/translations/{translationId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      },
      "put": {
        "operationId": "product-tree-update-localization-translation",
        "tags": [
          "localizations"
        ],
        "summary": "product-tree-update-localization-translation",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "translationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "translationId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  }
                },
                "required": [
                  "context"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-update-localization-translation",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "localizations/{id}/translations/{translationId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_LCLZ_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            },
            {
              "code": "ERR_LCLZ_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": null
            }
          ]
        }
      }
    },
    "/parameters": {
      "get": {
        "operationId": "product-tree-get-parameter-list",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-list",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "required": false,
            "schema": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "x-aura-field-code": "code"
                }
              },
              "x-aura-field-code": "filter"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderBy"
            }
          },
          {
            "name": "orderSort",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "x-aura-field-code": "orderSort"
            }
          },
          {
            "name": "pageIndex",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageIndex"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "format": "int32",
              "x-aura-field-code": "pageSize"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 5
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "code": {
                        "x-aura-type": "unresolved"
                      },
                      "id": {
                        "x-aura-type": "unresolved"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "name": {
                        "x-aura-type": "unresolved"
                      },
                      "parameterFields": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "code": {
                              "x-aura-type": "unresolved"
                            },
                            "id": {
                              "x-aura-type": "unresolved"
                            },
                            "isActive": {
                              "type": "boolean",
                              "x-aura-field-code": "isActive"
                            },
                            "translations": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "languageCode": {
                                    "type": "string",
                                    "x-aura-field-code": "languageCode"
                                  },
                                  "name": {
                                    "x-aura-type": "unresolved"
                                  }
                                },
                                "x-aura-field-code": "translations"
                              }
                            }
                          },
                          "x-aura-field-code": "parameterFields"
                        }
                      },
                      "translations": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "languageCode": {
                              "type": "string",
                              "x-aura-field-code": "languageCode"
                            },
                            "name": {
                              "x-aura-type": "unresolved"
                            }
                          },
                          "x-aura-field-code": "translations"
                        }
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        }
      },
      "post": {
        "operationId": "product-tree-create-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-create-parameter",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "x-aura-type": "unresolved"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "x-aura-type": "unresolved"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "code",
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 0,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-parameter",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_1",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}": {
      "get": {
        "operationId": "product-tree-get-parameter-by-code",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-by-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "code"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "x-aura-type": "unresolved"
                    },
                    "id": {
                      "x-aura-type": "unresolved"
                    },
                    "isActive": {
                      "type": "boolean",
                      "x-aura-field-code": "isActive"
                    },
                    "name": {
                      "x-aura-type": "unresolved"
                    },
                    "parameterFields": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "x-aura-type": "unresolved"
                          },
                          "id": {
                            "x-aura-type": "unresolved"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActive"
                          },
                          "translations": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "languageCode": {
                                  "type": "string",
                                  "x-aura-field-code": "languageCode"
                                },
                                "name": {
                                  "x-aura-type": "unresolved"
                                }
                              },
                              "x-aura-field-code": "translations"
                            }
                          }
                        },
                        "x-aura-field-code": "parameterFields"
                      }
                    },
                    "translations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "languageCode": {
                            "type": "string",
                            "x-aura-field-code": "languageCode"
                          },
                          "name": {
                            "x-aura-type": "unresolved"
                          }
                        },
                        "x-aura-field-code": "translations"
                      }
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-by-code",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/by-code/{code}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ParameterDto",
          "payload": "ParameterDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}/default-value": {
      "get": {
        "operationId": "product-tree-get-parameter-default-value-by-parameter-code",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-default-value-by-parameter-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-default-value-by-parameter-code",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/by-code/{code}/default-value",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `string`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "string",
          "payload": "string"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_14",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_DEFAULT_VALUE_BY_CODE_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/by-code/{code}/values": {
      "get": {
        "operationId": "product-tree-get-parameter-value-list-by-parameter-code",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-value-list-by-parameter-code",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "x-aura-field-code": "code"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "context": {
                        "type": "string",
                        "x-aura-field-code": "context"
                      },
                      "id": {
                        "x-aura-type": "unresolved"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "paramKey": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "paramKey"
                      },
                      "sortOrder": {
                        "x-aura-type": "unresolved"
                      },
                      "translations": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "x-aura-field-code": "context"
                            },
                            "languageCode": {
                              "type": "string",
                              "x-aura-field-code": "languageCode"
                            }
                          },
                          "x-aura-field-code": "translations"
                        }
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-value-list-by-parameter-code",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/by-code/{code}/values",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterValueDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterValueDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParamKey",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "SortOrder",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterValueTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_12",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_CODE_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}": {
      "delete": {
        "operationId": "product-tree-delete-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-delete-parameter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-delete-parameter",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "get": {
        "operationId": "product-tree-get-parameter-by-id",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-by-id",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares this returns a single record. Of 25 operations in this state with a probeable route, 8 answered and 6 returned a single record — the other two returned a collection and a bare boolean.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "x-aura-type": "unresolved"
                    },
                    "id": {
                      "x-aura-type": "unresolved"
                    },
                    "isActive": {
                      "type": "boolean",
                      "x-aura-field-code": "isActive"
                    },
                    "name": {
                      "x-aura-type": "unresolved"
                    },
                    "parameterFields": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "code": {
                            "x-aura-type": "unresolved"
                          },
                          "id": {
                            "x-aura-type": "unresolved"
                          },
                          "isActive": {
                            "type": "boolean",
                            "x-aura-field-code": "isActive"
                          },
                          "translations": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "languageCode": {
                                  "type": "string",
                                  "x-aura-field-code": "languageCode"
                                },
                                "name": {
                                  "x-aura-type": "unresolved"
                                }
                              },
                              "x-aura-field-code": "translations"
                            }
                          }
                        },
                        "x-aura-field-code": "parameterFields"
                      }
                    },
                    "translations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "languageCode": {
                            "type": "string",
                            "x-aura-field-code": "languageCode"
                          },
                          "name": {
                            "x-aura-type": "unresolved"
                          }
                        },
                        "x-aura-field-code": "translations"
                      }
                    }
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-by-id",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "ParameterDto",
          "payload": "ParameterDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Name",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterTranslationDto>",
              "nullable": false,
              "collection": true
            },
            {
              "name": "ParameterFields",
              "declared_type": "IEnumerable<ParameterFieldDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "product-tree-update-parameter",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-update-parameter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "x-aura-type": "unresolved"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-update-parameter",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/default-value": {
      "get": {
        "operationId": "product-tree-get-parameter-default-value",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-default-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-default-value",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/default-value",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "declared-non-dto",
          "note": "The route returns `string`, a scalar rather than an object. There is no field tree below because there are no fields: the body is a JSON string. This is a complete answer read from the declaration, not a gap.",
          "declared_type": "string",
          "payload": "string"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_13",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_DEFAULT_VALUE_BY_ID_NOT_EXISTS"
            },
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/field-values/{fieldValueId}": {
      "delete": {
        "operationId": "product-tree-delete-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-delete-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "fieldValueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldValueId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-delete-parameter-field-value",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/field-values/{fieldValueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_10",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_VALUE_NOT_EXISTS"
            },
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "put": {
        "operationId": "product-tree-update-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-update-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "fieldValueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldValueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "fieldValue": {
                    "type": "string",
                    "x-aura-field-code": "fieldValue"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  }
                },
                "required": [
                  "fieldValue",
                  "isActive"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-update-parameter-field-value",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/field-values/{fieldValueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_10",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_VALUE_NOT_EXISTS"
            },
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      }
    },
    "/parameters/{id}/fields": {
      "get": {
        "operationId": "product-tree-get-parameter-field-list",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-field-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "code": {
                        "x-aura-type": "unresolved"
                      },
                      "id": {
                        "x-aura-type": "unresolved"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "translations": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "languageCode": {
                              "type": "string",
                              "x-aura-field-code": "languageCode"
                            },
                            "name": {
                              "x-aura-type": "unresolved"
                            }
                          },
                          "x-aura-field-code": "translations"
                        }
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-field-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/fields",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterFieldDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterFieldDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Code",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterFieldTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "product-tree-create-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-create-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "code": {
                    "x-aura-type": "unresolved"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "x-aura-type": "unresolved"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "code",
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 3,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-parameter-field",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/fields",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_3",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_CODE_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/fields/{fieldId}": {
      "delete": {
        "operationId": "product-tree-delete-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-delete-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-delete-parameter-field",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_5",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_NOT_EXISTS"
            }
          ]
        }
      },
      "put": {
        "operationId": "product-tree-update-parameter-field",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-update-parameter-field",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "fieldId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "fieldId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        },
                        "name": {
                          "x-aura-type": "unresolved"
                        }
                      },
                      "required": [
                        "languageCode",
                        "name"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "isActive",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 2,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-update-parameter-field",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/fields/{fieldId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_5",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_FIELD_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/values": {
      "get": {
        "operationId": "product-tree-get-parameter-value-list",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-value-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "context": {
                        "type": "string",
                        "x-aura-field-code": "context"
                      },
                      "id": {
                        "x-aura-type": "unresolved"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "paramKey": {
                        "type": "integer",
                        "format": "int32",
                        "x-aura-field-code": "paramKey"
                      },
                      "sortOrder": {
                        "x-aura-type": "unresolved"
                      },
                      "translations": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "context": {
                              "type": "string",
                              "x-aura-field-code": "context"
                            },
                            "languageCode": {
                              "type": "string",
                              "x-aura-field-code": "languageCode"
                            }
                          },
                          "x-aura-field-code": "translations"
                        }
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-value-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/values",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterValueDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterValueDto",
          "collection": true,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParamKey",
              "declared_type": "int",
              "nullable": false,
              "collection": false
            },
            {
              "name": "Context",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "SortOrder",
              "declared_type": "int?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool?",
              "nullable": true,
              "collection": false
            },
            {
              "name": "Translations",
              "declared_type": "IEnumerable<ParameterValueTranslationDto>",
              "nullable": false,
              "collection": true
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "product-tree-create-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-create-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "paramKey": {
                    "type": "integer",
                    "format": "int32",
                    "x-aura-field-code": "paramKey"
                  },
                  "sortOrder": {
                    "x-aura-type": "unresolved"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "context",
                  "isActive",
                  "paramKey",
                  "sortOrder",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 5,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 1,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-parameter-value",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/values",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "AuraCommandDto",
          "payload": "AuraCommandDto",
          "collection": false,
          "members": [
            {
              "name": "Id",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_7",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_WITH_KEY_ALREADY_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/values/{valueId}": {
      "delete": {
        "operationId": "product-tree-delete-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-delete-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "DELETE",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-delete-parameter-value",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_NOT_EXISTS"
            }
          ]
        }
      },
      "put": {
        "operationId": "product-tree-update-parameter-value",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-update-parameter-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "context": {
                    "type": "string",
                    "x-aura-field-code": "context"
                  },
                  "isActive": {
                    "type": "boolean",
                    "x-aura-field-code": "isActive"
                  },
                  "sortOrder": {
                    "x-aura-type": "unresolved"
                  },
                  "translations": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "context": {
                          "type": "string",
                          "x-aura-field-code": "context"
                        },
                        "languageCode": {
                          "type": "string",
                          "x-aura-field-code": "languageCode"
                        }
                      },
                      "required": [
                        "context",
                        "languageCode"
                      ],
                      "x-aura-field-code": "translations"
                    }
                  }
                },
                "required": [
                  "context",
                  "isActive",
                  "sortOrder",
                  "translations"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "PUT",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 4,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-update-parameter-value",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_NOT_EXISTS"
            }
          ]
        }
      }
    },
    "/parameters/{id}/values/{valueId}/field-values": {
      "get": {
        "operationId": "product-tree-get-parameter-field-value-list",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-get-parameter-field-value-list",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "id"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          },
          {
            "name": "includeInactive",
            "in": "query",
            "required": false,
            "schema": {
              "type": "boolean",
              "x-aura-field-code": "includeInactive"
            }
          }
        ],
        "x-aura-request-binding": {
          "method": "GET",
          "admits": [
            "route",
            "query",
            "header",
            "claim"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 0,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 1
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. Returns a collection of records. Of 135 operations in this state that were probed (measured against a reference deployment on parameterless GET routes only), 118 answered and 118 returned a bare JSON array.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "description": "Array of catalog-declared response records.",
                  "items": {
                    "type": "object",
                    "properties": {
                      "fieldValue": {
                        "type": "string",
                        "x-aura-field-code": "fieldValue"
                      },
                      "isActive": {
                        "type": "boolean",
                        "x-aura-field-code": "isActive"
                      },
                      "parameterFieldId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "parameterFieldId"
                      },
                      "parameterFieldValueId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "parameterFieldValueId"
                      },
                      "parameterValueId": {
                        "type": "string",
                        "format": "uuid",
                        "x-aura-field-code": "parameterValueId"
                      }
                    }
                  },
                  "x-aura-documentation": {
                    "language": "en",
                    "status": "structural-fallback",
                    "source": "catalog-structure"
                  }
                }
              }
            },
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-get-parameter-field-value-list",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}/field-values",
        "x-aura-capabilities": {
          "filtering": true,
          "ordering": true,
          "paging": true,
          "note": "Platform-provided behaviours declared on the catalog entry. The catalog does not record the parameter names the platform uses for them, so they are not rendered as parameters here."
        },
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "structure",
          "declared_type": "IEnumerable<ParameterFieldValueDto>",
          "envelopes": [
            "IEnumerable"
          ],
          "payload": "ParameterFieldValueDto",
          "collection": true,
          "members": [
            {
              "name": "ParameterFieldValueId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParameterValueId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "ParameterFieldId",
              "declared_type": "Guid",
              "nullable": false,
              "collection": false
            },
            {
              "name": "FieldValue",
              "declared_type": "string",
              "nullable": false,
              "collection": false
            },
            {
              "name": "IsActive",
              "declared_type": "bool",
              "nullable": false,
              "collection": false
            }
          ],
          "naming": "Member names are the service's declaration names."
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            }
          ]
        }
      },
      "post": {
        "operationId": "product-tree-create-parameter-field-value",
        "tags": [
          "parameters"
        ],
        "summary": "product-tree-create-parameter-field-value",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "x-aura-type": "unresolved"
            }
          },
          {
            "name": "valueId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "x-aura-field-code": "valueId"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "fieldValues": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "fieldValue": {
                          "type": "string",
                          "x-aura-field-code": "fieldValue"
                        },
                        "isActive": {
                          "type": "boolean",
                          "x-aura-field-code": "isActive"
                        },
                        "parameterFieldId": {
                          "type": "string",
                          "format": "uuid",
                          "x-aura-field-code": "parameterFieldId"
                        }
                      },
                      "required": [
                        "fieldValue",
                        "isActive",
                        "parameterFieldId"
                      ],
                      "x-aura-field-code": "fieldValues"
                    }
                  }
                },
                "required": [
                  "fieldValues"
                ]
              }
            }
          }
        },
        "x-aura-request-binding": {
          "method": "POST",
          "admits": [
            "route",
            "header",
            "claim",
            "body",
            "form"
          ],
          "binder_filters_by_binding_source": true,
          "declared_root_fields_by_binding_source": {
            "body": 1,
            "claim": 0,
            "form": 0,
            "header": 0,
            "path": 2,
            "query": 0
          },
          "dropped_binding_sources": [],
          "dropped_field_names": {},
          "dropped_mandatory_field_names": [],
          "verdict": "all-declared-sources-admitted",
          "basis": "Read from the platform's service-invocation layer, which selects binding sources by the contract row's usage type and operation type and then keeps only fields bound to one of them.",
          "http_edge_note": null
        },
        "responses": {
          "200": {
            "description": "Success. The catalog declares no response fields for this operation. The body is UNKNOWN CONTENT. The response type this route registers was read from the service's own source and is published on this operation as `x-aura-code-response`.",
            "x-aura-documentation": {
              "language": "en",
              "status": "structural-fallback",
              "source": "catalog-structure"
            }
          },
          "400": {
            "$ref": "#/components/responses/Error400",
            "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one."
          },
          "408": {
            "$ref": "#/components/responses/Error408",
            "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`."
          },
          "409": {
            "$ref": "#/components/responses/Error409",
            "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`."
          },
          "500": {
            "$ref": "#/components/responses/Error500",
            "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`."
          },
          "502": {
            "$ref": "#/components/responses/Error502",
            "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`."
          },
          "default": {
            "description": "Error.\n\n**Platform error envelope:** The platform error envelope. The status is chosen by the KIND of failure, not by the error code, so one code can arrive with different statuses and one status covers many codes. Where this operation is known to raise specific codes they are listed under `x-aura-error-codes`; that list is what was found by reading its handler and validators, not a closed set.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PlatformError"
                }
              }
            }
          }
        },
        "x-aura-service-code": "product-tree-create-parameter-field-value",
        "x-aura-domain": "product-tree",
        "x-aura-raw-url-path": "parameters/{id}/values/{valueId}/field-values",
        "x-aura-request-contract": {
          "state": "not-parsed-in-repo"
        },
        "x-aura-code-response": {
          "state": "empty-body",
          "note": "The registration passes ONE generic argument, which is the request type. There is no second argument because there is no response type to name: the constraint on that overload is `ICommand`/`IQuery`, both of which extend `IRequest<Unit>`, so the framework binds the result to `Unit` and `InvokeRequestAsync` returns before writing anything to the body.",
          "declared_type": "Unit",
          "body": "empty",
          "success_status": 200,
          "derivation": "arity-1 registration; ICommand/IQuery : IRequest<Unit>, and the framework returns before writing a body",
          "payload": "Unit"
        },
        "x-aura-error-codes": {
          "note": "Error codes this operation is known to raise, read from the handler and its validators. `message_available` says whether the error catalog carries text for a code at this ref — many are raised by code that has no seeded definition here, and for those the code itself is all the platform publishes. This is what was FOUND, not a closed list: an operation may raise a code through a path this scan does not follow.",
          "codes": [
            {
              "code": "ERR_PRMTR_2",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_ID_NOT_FOUND"
            },
            {
              "code": "ERR_PRMTR_4",
              "status": 400,
              "message": null,
              "message_available": false,
              "constant_name": "PARAMETER_VALUE_NOT_EXISTS"
            }
          ]
        }
      }
    }
  },
  "x-aura-collapsed-targets": {
    "note": "These operations are served by this domain but are documented under the forwarder that fronts them, because a forwarder and its target are one logical API and only the caller-facing path is an address. They are listed here so an endpoint of this service is findable from this service's document.",
    "count": 6
  },
  "components": {
    "schemas": {
      "PlatformError": {
        "type": "object",
        "title": "PlatformError",
        "description": "The body a mapped failure returns. One `error` object; `error.code` is the only place the code appears. Not every failure carries it — see the individual statuses.",
        "required": [
          "error"
        ],
        "properties": {
          "error": {
            "type": "object",
            "required": [
              "code",
              "message"
            ],
            "properties": {
              "code": {
                "type": "string",
                "description": "The platform error code. It is the identifier on the wire; a human-readable message for it is NOT guaranteed. The error catalog carries the codes seeded for this snapshot, with whichever of the published languages each one has text for, and many codes raised by services have no seeded entry at all. Where this portal knows which operations raise a code, they list it under `x-aura-error-codes`, each entry saying whether a message exists for it."
              },
              "message": {
                "type": "string",
                "description": "The resolved message for the code, in the language the request asked for."
              },
              "validationErrors": {
                "type": "array",
                "description": "Present on a validation failure only: one entry per rule that failed, each carrying its own code.",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                }
              },
              "businessErrors": {
                "type": "array",
                "description": "Present on a bulk failure only: one code/message pair per failed item.",
                "items": {
                  "type": "object",
                  "properties": {
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "responses": {
      "Error400": {
        "description": "Raised by: AuraValidationException, BatchException, BulkBusinessException, BusinessException, ChannelException, ChannelNotFoundException, JsonException, PartnerCodeNotFoundException, PartnerCodeNullException, PartnerException. Fixed codes for this status: ERR_AURA_30, ERR_AURA_31, ERR_AURA_32, ERR_AURA_39, ERR_AURA_4, ERR_AURA_5, VALIDATION_ERROR. Usually carries the error envelope, but 1 of the 10 failure classes mapped to this status do not — a client that always parses `error.code` must tolerate a body without one.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error408": {
        "description": "Raised by: AuraTimeoutException. Fixed code for this status: ERR_AURA_33. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error409": {
        "description": "Raised by: DbUpdateConcurrencyException, IdempotencyException. Fixed codes for this status: ERR_AURA_1, ERR_AURA_3. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error500": {
        "description": "Raised by: AuraException. Fixed code for this status: ERROR. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      },
      "Error502": {
        "description": "Raised by: AuraResponseTooLargeException. Fixed code for this status: ERR_AURA_41. Carries the error envelope; read `error.code`.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/PlatformError"
            }
          }
        }
      }
    }
  }
}
