{
  "openapi": "3.0.1",
  "info": {
    "title": "Monitoring - One Platform Organizations Integration API",
    "description": "Monitoring - Public endpoints to integrate Organization with One Platform",
    "version": "v1"
  },
  "paths": {
    "/v1/organizations/{id}/business-relations": {
      "get": {
        "tags": [
          "Business Relations"
        ],
        "summary": "Returns the list of the business relations.",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalBusinessRelationView",
        "operationId": "GET_v1_organizations_id_business-relations",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "description": "The product identifier of the business relation to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityId",
            "in": "query",
            "description": "The legal entity identifier of the business relation to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityName",
            "in": "query",
            "description": "The legal entity name of the business relation to filter.\r\nIgnored if a search filter is defined.\r\n(Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerIdsPath",
            "in": "query",
            "description": "The consumer identifiers path of the business relation to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "originId",
            "in": "query",
            "description": "The origin identifier of the business relation to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "originIdIsNull",
            "in": "query",
            "description": "Boolean, which defines whether to filter business relations with OriginId null or not null.\r\nIgnored if originId is defined. (Default: Not applied)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "integratorId",
            "in": "query",
            "description": "The integrator identifier to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "integratorLabel",
            "in": "query",
            "description": "The integrator label to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resourceType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdAtFrom",
            "in": "query",
            "description": "Date and time from when business relation was created. ISO 8601 format.\r\nExample: 2023-11-28T08:14:32.585Z\r\n(Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "createdAtTo",
            "in": "query",
            "description": "Date and time to when business relation was created. ISO 8601 format.\r\nExample: 2023-11-28T08:14:32.585Z\r\n(Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "updatedAtFrom",
            "in": "query",
            "description": "Date and time from when this business relation was updated. ISO 8601 format.\r\nExample: 2023-11-28T08:14:32.585Z\r\n(Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "updatedAtTo",
            "in": "query",
            "description": "Date and time to when this business relation was updated. ISO 8601 format.\r\nExample: 2023-11-28T08:14:32.585Z\r\n(Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The identifier, legal entity name or integrator identifier to filter.\r\n(Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "exact",
            "in": "query",
            "description": "Boolean, which defines whether the params legalEntityName and search must match\r\nexactly. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "The page number of pagination. (Default: 1)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The page size of pagination. (Default: 50, Max: 500)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "description": "Boolean, which defines if try to use the legal entity associated with the\r\norganization consumer. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfBusinessRelationDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/business-relations/consumer-paths/{consumerId}": {
      "get": {
        "tags": [
          "Business Relations"
        ],
        "summary": "Returns the list of consumer root paths based on related consumer associated with the given organization.",
        "description": "<strong>Security policies</strong>: OrganizationsBusinessRelationsConsumerPathsView",
        "operationId": "GET_v1_organizations_id_business-relations_consumer-paths_consumerId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier which associated consumer should be used as the parent consumer filter for\r\ngiven child consumer paths.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The consumer identifier of the business relation path to filter.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "description": "The product identifier of the business relation to filter.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListDtoOfConsumerPathWithNameDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/business-relations/consumer-path-items": {
      "get": {
        "tags": [
          "Business Relations"
        ],
        "summary": "Returns the list of consumer path items based on related consumer associated with the given organization.",
        "description": "<strong>Security policies</strong>: OrganizationsBusinessRelationsConsumerPathsView",
        "operationId": "GET_v1_organizations_id_business-relations_consumer-path-items",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier which associated consumer should be used as the filter.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "description": "The product identifier of the business relation to filter.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityId",
            "in": "query",
            "description": "The legal entity identifier of the business relation to filter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rootPath",
            "in": "query",
            "description": "The consumer root path of the business relation to filter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The consumer name to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "exact",
            "in": "query",
            "description": "Boolean, which defines whether the params name and search must match exactly.\r\n(Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "The page number of pagination. (Default: 1)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The page size of pagination. (Default: 50, Max: 500)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "description": "Boolean, which defines if try to use the legal entity associated with the\r\norganization consumer. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfConsumerPathItemDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/business-relations/contracts-consumers": {
      "get": {
        "tags": [
          "Business Relations"
        ],
        "summary": "Returns the first 50 consumers based on the search parameter related to the consumer associated with the given organization.",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractView",
        "operationId": "GET_v1_organizations_id_business-relations_contracts-consumers",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier which associated consumer should be used as the filter.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerParty",
            "in": "query",
            "description": "The consumer party of the contract to return. (Default: BillingConsumer)",
            "schema": {
              "enum": [
                "LegalEntity",
                "BillingConsumer",
                "Issuer",
                "LegalRepresentative",
                "Owner"
              ],
              "type": "string",
              "format": "int32"
            }
          },
          {
            "name": "targetParty",
            "in": "query",
            "description": "The party of the given organization. (Default: LegalEntity)",
            "schema": {
              "enum": [
                "LegalEntity",
                "BillingConsumer",
                "Issuer",
                "LegalRepresentative",
                "Owner"
              ],
              "type": "string",
              "format": "int32"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The consumer name to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfConsumerDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers": {
      "get": {
        "tags": [
          "Consumers"
        ],
        "summary": "Returns the list of directly connected consumers to consumer associated to provided organizationId (V1).",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-06-01, use API GET '/v2/organizations/{id}/consumers' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumersView",
        "operationId": "GET_v1_organizations_id_consumers",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isEmptyVat",
            "in": "query",
            "description": "Filter consumers with empty vat number. (Default: Not applied)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "vat",
            "in": "query",
            "description": "The vat of the consumer to filter. Ignored if search filter defined or is empty vat is true. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "taxNumber",
            "in": "query",
            "description": "The tax number of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "paNumber",
            "in": "query",
            "description": "The PA number of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "country",
            "in": "query",
            "description": "The country of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerType",
            "in": "query",
            "description": "The types of customer to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "The name of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "description": "The types of consumer to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "metadata",
            "in": "query",
            "description": "Metadata values of the consumer to filter. Is JSON object format. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "allLevels",
            "in": "query",
            "description": "Boolean which defines whether to include all levels of consumers. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "totalElements",
            "in": "query",
            "description": "The total number of elements in the pagination. (Default: Not applied)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "description": "Boolean which defines if trying to use the legal entity associated with the organization consumer. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The search term for filtering items. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "exact",
            "in": "query",
            "description": "Boolean which defines whether the params name and search must match exactly. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "The page number of pagination. (Default: 1)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The page size of pagination. (Default: 50, Max: 500)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "description": "Indicates whether the query should also return the total count of items (Default: true)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfConsumerDtoV1"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "post": {
        "tags": [
          "Consumers"
        ],
        "summary": "Create organization consumer and returns the identifier of a consumer created.",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-06-01, use API POST '/v2/organizations/{id}/consumers' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumersCreate",
        "operationId": "POST_v1_organizations_id_consumers",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "dryRun",
            "in": "query",
            "description": "Performs all creation logic without creating to DB the consumer.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerBaseWithoutCrmDtoV1"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v2/organizations/{id}/consumers": {
      "get": {
        "tags": [
          "Consumers"
        ],
        "summary": "Returns the list of directly connected consumers to consumer associated to provided organizationId.",
        "description": "⚠️ UNSTABLE ENDPOINT — This v2 endpoint is under active development.\r\nThe contract (fields, request/response structure, behavior) may change without notice.\r\nAll integrations consuming this endpoint must be updated accordingly.\r\nThis notice will be removed once the endpoint is stable.<br/><br/><strong>Security policies</strong>: OrganizationsConsumersView",
        "operationId": "GET_v2_organizations_id_consumers",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "allLevels",
            "in": "query",
            "description": "Boolean which defines whether to include all levels of consumers. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "totalElements",
            "in": "query",
            "description": "The total number of elements in the pagination. (Default: Not applied)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "description": "Boolean which defines if trying to use the legal entity associated with the organization consumer. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "name",
            "in": "query",
            "description": "The name of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "description": "The types of consumer to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "metadata",
            "in": "query",
            "description": "Metadata values of the consumer to filter. Is JSON object format. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "taxCode1",
            "in": "query",
            "description": "The tax code 1 of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "taxCode2",
            "in": "query",
            "description": "The tax code 2 of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "taxCode3",
            "in": "query",
            "description": "The tax code 3 of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "country",
            "in": "query",
            "description": "The country of the consumer to filter. Ignored if search filter defined. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "customerType",
            "in": "query",
            "description": "The types of customer to filter. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The search term for filtering items. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "exact",
            "in": "query",
            "description": "Boolean which defines whether the params name and search must match exactly. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "The page number of pagination. (Default: 1)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The page size of pagination. (Default: 50, Max: 500)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "description": "Indicates whether the query should also return the total count of items (Default: true)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfConsumerDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "post": {
        "tags": [
          "Consumers"
        ],
        "summary": "Create organization consumer (V2 — TaxCode1/TaxCode2/TaxCode3) and returns the identifier of created consumer.",
        "description": "⚠️ UNSTABLE ENDPOINT — This v2 endpoint is under active development.\r\nThe contract (fields, request/response structure, behavior) may change without notice.\r\nAll integrations consuming this endpoint must be updated accordingly.\r\nThis notice will be removed once the endpoint is stable.\r\n\n\r\n⚠️ NOTE ON TAX CODE VALIDATION — This endpoint applies strict validation for supported countries\r\n(currently IT and FR). If support for additional countries with strict tax code validation is introduced\r\nin the future, this endpoint will automatically enforce those rules — callers must ensure tax codes are\r\nvalid for the consumer's country.<br/><br/><strong>Security policies</strong>: OrganizationsConsumersCreate",
        "operationId": "POST_v2_organizations_id_consumers",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "dryRun",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerBaseWithoutCrmDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}": {
      "get": {
        "tags": [
          "Consumers"
        ],
        "summary": "Returns the detail of a consumer based on related consumer associated to given organization (V1).",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-06-01, use API GET '/v2/organizations/{id}/consumers/{consumerId}' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumerDetailsView",
        "operationId": "GET_v1_organizations_id_consumers_consumerId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConsumerDtoV1"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v2/organizations/{id}/consumers/{consumerId}": {
      "get": {
        "tags": [
          "Consumers"
        ],
        "summary": "Returns the detail of a consumer based on related consumer associated to given organization.",
        "description": "⚠️ UNSTABLE ENDPOINT — This v2 endpoint is under active development.\r\nThe contract (fields, request/response structure, behavior) may change without notice.\r\nAll integrations consuming this endpoint must be updated accordingly.\r\nThis notice will be removed once the endpoint is stable.<br/><br/><strong>Security policies</strong>: OrganizationsConsumerDetailsView",
        "operationId": "GET_v2_organizations_id_consumers_consumerId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The identifier of the organization which associated consumer should be used as parent consumer filter for given\r\nconsumer.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "includeHasContracts",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConsumerWithExtraInfoDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/general-infos": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update organization consumer general infos and returns the identifier of updated consumer.",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-07-01, use API PUT '/v2/organizations/{id}/consumers/{consumerId}/general-infos' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumersGeneralInfosEdit",
        "operationId": "PUT_v1_organizations_id_consumers_consumerId_general-infos",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "force",
            "in": "query",
            "description": "Flag to force update if consumer have contracts.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerGeneralInfosDtoV1"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v2/organizations/{id}/consumers/{consumerId}/general-infos": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update organization consumer general infos and returns the identifier of updated consumer.",
        "description": "⚠️ UNSTABLE ENDPOINT — This v2 endpoint is under active development.\r\nThe contract (fields, request/response structure, behavior) may change without notice.\r\nAll integrations consuming this endpoint must be updated accordingly.\r\nThis notice will be removed once the endpoint is stable.<br/><br/><strong>Security policies</strong>: OrganizationsConsumersGeneralInfosEdit",
        "operationId": "PUT_v2_organizations_id_consumers_consumerId_general-infos",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "force",
            "in": "query",
            "description": "Flag to force update if consumer have contracts.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerGeneralInfosDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/birth-infos": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update organization customer birth info and returns the identifier of updated customer..",
        "description": "<strong>Security policies</strong>: OrganizationsConsumersBirthInfoEdit",
        "operationId": "PUT_v1_organizations_id_consumers_consumerId_birth-infos",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerBirthInfoDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/residence-infos": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update organization customer residence info and returns the identifier of updated customer.",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-06-01, use API PUT '/v2/organizations/{id}/consumers/{consumerId}/residence-infos' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumersResidenceInfoEdit, OrganizationsConsumersTaxDetailsEdit",
        "operationId": "PUT_v1_organizations_id_consumers_consumerId_residence-infos",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerResidenceInfoAndTaxNumberDtoV1"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v2/organizations/{id}/consumers/{consumerId}/residence-infos": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update organization consumer residence info (V2 — PersonalCode) and returns the identifier of updated consumer.",
        "description": "⚠️ UNSTABLE ENDPOINT — This v2 endpoint is under active development.\r\nThe contract (fields, request/response structure, behavior) may change without notice.\r\nAll integrations consuming this endpoint must be updated accordingly.\r\nThis notice will be removed once the endpoint is stable.\r\n\n\r\n⚠️ NOTE ON TAX CODE VALIDATION — This endpoint applies strict validation for supported countries\r\n(currently IT and FR). If support for additional countries with strict tax code validation is introduced\r\nin the future, this endpoint will automatically enforce those rules — callers must ensure tax codes are\r\nvalid for the consumer's country. Additionally, if the consumer's tax codes are already strictly\r\nvalidated (`IsValidatedTaxCodes = true`), validation cannot regress — submitting codes that\r\nwould fail strict validation will return a 400 error.<br/><br/><strong>Security policies</strong>: OrganizationsConsumersResidenceInfoEdit, OrganizationsConsumersTaxDetailsEdit",
        "operationId": "PUT_v2_organizations_id_consumers_consumerId_residence-infos",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerResidenceInfoDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/billing-details": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update consumer billing infos and returns the identifier of updated consumer.",
        "description": "<strong>Security policies</strong>: OrganizationsConsumersBillingDetailsEdit, OrganizationsConsumersContactInfosEdit",
        "operationId": "PUT_v1_organizations_id_consumers_consumerId_billing-details",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "force",
            "in": "query",
            "description": "Flag to force update if consumer have contracts.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerBillingInfosDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/contact-infos": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update consumer contact infos and returns the identifier of updated consumer.",
        "description": "<strong>Security policies</strong>: OrganizationsConsumersContactInfosEdit",
        "operationId": "PUT_v1_organizations_id_consumers_consumerId_contact-infos",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerContactInfosDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/tax-details": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update consumer tax infos and returns the identifier of updated consumer.",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-06-01, use API PUT '/v2/organizations/{id}/consumers/{consumerId}/tax-details' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumersTaxDetailsEdit",
        "operationId": "PUT_v1_organizations_id_consumers_consumerId_tax-details",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "force",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerTaxInfosDtoV1"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v2/organizations/{id}/consumers/{consumerId}/tax-details": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update organization consumer tax infos (V2 — TaxCode1/TaxCode2/TaxCode3) and returns the identifier of updated consumer.",
        "description": "⚠️ UNSTABLE ENDPOINT — This v2 endpoint is under active development.\r\nThe contract (fields, request/response structure, behavior) may change without notice.\r\nAll integrations consuming this endpoint must be updated accordingly.\r\nThis notice will be removed once the endpoint is stable.\r\n\n\r\n⚠️ NOTE ON TAX CODE VALIDATION — This endpoint applies strict validation for supported countries\r\n(currently IT and FR). If support for additional countries with strict tax code validation is introduced\r\nin the future, this endpoint will automatically enforce those rules — callers must ensure tax codes are\r\nvalid for the consumer's country. Additionally, if the consumer's tax codes are already strictly\r\nvalidated (`IsValidatedTaxCodes = true`), validation cannot regress — submitting codes that\r\nwould fail strict validation will return a 400 error.<br/><br/><strong>Security policies</strong>: OrganizationsConsumersTaxDetailsEdit",
        "operationId": "PUT_v2_organizations_id_consumers_consumerId_tax-details",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "force",
            "in": "query",
            "description": "Flag to force update if consumer have contracts.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerTaxInfosDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/additional-infos": {
      "put": {
        "tags": [
          "Consumers"
        ],
        "summary": "Update consumer additional infos and returns the identifier of updated consumer.",
        "description": "<strong>Security policies</strong>: OrganizationsConsumersAdditionalInfosEdit",
        "operationId": "PUT_v1_organizations_id_consumers_consumerId_additional-infos",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to retrieve.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConsumerAdditionalInfosDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/users": {
      "get": {
        "tags": [
          "Consumers"
        ],
        "summary": "Returns the list of associated users.",
        "description": "<strong>Security policies</strong>: OrganizationsConsumerDetailsView",
        "operationId": "GET_v1_organizations_id_consumers_consumerId_users",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The identifier of the consumer to filter.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListDtoOfUserBaseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/consumers": {
      "get": {
        "tags": [
          "Consumers"
        ],
        "summary": "Returns the list of the contract consumers (V1).",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-06-01, use API GET '/v2/contracts/{contractId}/consumers' instead.<br/><br/><b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2027-06-01, use API GET '/v2/organizations/{id}/contracts/{contractId}/consumers' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractDetailsView",
        "operationId": "GET_v1_organizations_id_contracts_contractId_consumers",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ConsumerDtoV1"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v2/organizations/{id}/contracts/{contractId}/consumers": {
      "get": {
        "tags": [
          "Consumers"
        ],
        "summary": "Returns the list of the contract consumers.",
        "description": "⚠️ UNSTABLE ENDPOINT — This v2 endpoint is under active development.\r\nThe contract (fields, request/response structure, behavior) may change without notice.\r\nAll integrations consuming this endpoint must be updated accordingly.\r\nThis notice will be removed once the endpoint is stable.<br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractDetailsView",
        "operationId": "GET_v2_organizations_id_contracts_contractId_consumers",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListDtoOfConsumerDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumptions-aggregated/consumers/{consumerId}": {
      "get": {
        "tags": [
          "Consumptions"
        ],
        "summary": "Get product consumptions as aggregated for a consumer based on related consumer associated to given organization.",
        "description": "<strong>Security policies</strong>: OrganizationsConsumptionsView",
        "operationId": "GET_v1_organizations_id_consumptions-aggregated_consumers_consumerId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The identifier of the organization which associated consumer should be used as parent consumer filter for given\r\nchild consumer\r\naggregated consumptions.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The consumer identifier for which aggregated consumptions are desired.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "description": "The product identifier for which consumer's aggregated consumptions should be filtered.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "metricId",
            "in": "query",
            "description": "The list of metric identifiers for which consumer's aggregated consumptions should be filtered.\r\nIs JSON array format.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityId",
            "in": "query",
            "description": "The legal entity identifier for which consumer's aggregated consumptions should be\r\nfiltered.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rootPath",
            "in": "query",
            "description": "The root path for which consumer's aggregated consumptions should be filtered (activated with\r\nstrict at true).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "year",
            "in": "query",
            "description": "The year for which consumer's aggregated consumptions should be filtered.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "month",
            "in": "query",
            "description": "The month for which consumer's aggregated consumptions should be filtered.\r\nIf Empty then we will get aggregated consumptions for all months of the given year.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "attributeId",
            "in": "query",
            "description": "The attribute identifier for which consumer's aggregated consumptions should be filtered.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "aggregateType",
            "in": "query",
            "description": "Aggregate type (Daily, Monthly, Yearly) of the aggregated consumptions value.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "strict",
            "in": "query",
            "description": "Boolean which defines whether or not to strictly activate given filter params. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "integratorId",
            "in": "query",
            "description": "The integrator identifier for which aggregated consumptions are desired (activated with\r\nstrict at true).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "owner",
            "in": "query",
            "description": "Boolean which defines whether only consumptions directly owned by provided consumerId should be\r\nreturned (activated with strict at true). (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConsumptionsAggregatedConsumerDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumptions-aggregated/business-relations/{businessRelationId}": {
      "get": {
        "tags": [
          "Consumptions"
        ],
        "summary": "Get product consumptions as aggregated for business relation",
        "description": "<strong>Security policies</strong>: OrganizationsConsumptionsView",
        "operationId": "GET_v1_organizations_id_consumptions-aggregated_business-relations_businessRelationId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The identifier of the organization which associated consumer should be used as business relation owner",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "businessRelationId",
            "in": "path",
            "description": "The business relation identifier for which aggregated consumptions are desired.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "metricId",
            "in": "query",
            "description": "The list of metric identifiers for which aggregated consumptions should be filtered.\r\nIs JSON array format.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "year",
            "in": "query",
            "description": "The year for which aggregated consumptions should be filtered.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "month",
            "in": "query",
            "description": "The month for which aggregated consumptions should be filtered.\r\nIf Empty then we will get aggregated consumptions for all months of the given year.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "attributeId",
            "in": "query",
            "description": "The attribute identifier for which aggregated consumptions should be filtered.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "aggregateType",
            "in": "query",
            "description": "Aggregate type (Daily, Monthly, Yearly) of the aggregated consumptions value.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "description": "Boolean which defines if try to use the legal entity associated to the \r\norganization consumer. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConsumptionsAggregatedDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumptions/latest": {
      "get": {
        "tags": [
          "Consumptions"
        ],
        "summary": "Get latest consumptions for a business relation",
        "description": "It will return the latest consumptions for a business relation using query filters<br/><br/><strong>Security policies</strong>: OrganizationsConsumptionsView",
        "operationId": "GET_v1_organizations_id_consumptions_latest",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The organization identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "businessRelationId",
            "in": "query",
            "description": "Business relation identifier.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "metricId",
            "in": "query",
            "description": "Metric identifier. (Default: All metrics)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "description": "Boolean which defines if try to use the legal entity associated to the \r\norganization consumer. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LatestConsumptionsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-item-rules": {
      "get": {
        "tags": [
          "Contract Items"
        ],
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractView",
        "operationId": "GET_v1_organizations_id_contract-item-rules",
        "parameters": [
          {
            "name": "contractType",
            "in": "query",
            "description": "The contract type to filter rules by.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "skuId",
            "in": "query",
            "description": "The sku identifier to filter rules by.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/contract-item-rules": {
      "get": {
        "tags": [
          "Contract Items"
        ],
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractView",
        "operationId": "GET_v1_organizations_id_contracts_contractId_contract-item-rules",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found"
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/contract-items": {
      "post": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Create a contract item on given contract",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractCreate",
        "operationId": "POST_v1_organizations_id_contracts_contractId_contract-items",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "description": "The identifier of the contract.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractItemCreateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "get": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Returns paginated contract items for a given contract related to the organization with optional filters",
        "description": "<strong>Security policies</strong>: OrganizationContractOrGlobalContractDetailsView",
        "operationId": "GET_v1_organizations_id_contracts_contractId_contract-items",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ownerId",
            "in": "query",
            "description": "The owner identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productCategoryId",
            "in": "query",
            "description": "The product category identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issuerId",
            "in": "query",
            "description": "The issuer identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "billingConsumerId",
            "in": "query",
            "description": "The billing consumer identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalRepresentativeId",
            "in": "query",
            "description": "The legal representative identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "skuId",
            "in": "query",
            "description": "The SKU identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "subscriptionId",
            "in": "query",
            "description": "The subscription identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "resellContractItemId",
            "in": "query",
            "description": "The resell contract item identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "billingModelId",
            "in": "query",
            "description": "The billing model identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The contract status to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDateFrom",
            "in": "query",
            "description": "Filter contract items by start date from. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDateTo",
            "in": "query",
            "description": "Filter contract items by start date to. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDateFrom",
            "in": "query",
            "description": "Filter contract items by end date from. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "endDateTo",
            "in": "query",
            "description": "Filter contract items by end date to. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "skuParameters",
            "in": "query",
            "description": "The SKU parameters to filter contract items by. Pass as string serialized dictionary. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "The filter ODATA expression contract items by. If set exclude all other filters. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "The order ODATA expression contract items by. If set exclude other sorts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "userId",
            "in": "query",
            "description": "The user identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "description": "The product identifier to filter contract items by. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The search term for filtering items. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "exact",
            "in": "query",
            "description": "Boolean which defines whether the params name and search must match exactly. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "The page number of pagination. (Default: 1)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The page size of pagination. (Default: 50, Max: 500)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "description": "Indicates whether the query should also return the total count of items (Default: true)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfContractItemDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}": {
      "get": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Returns a contract item related to the organization",
        "description": "<strong>Security policies</strong>: OrganizationContractOrGlobalContractDetailsView",
        "operationId": "GET_v1_organizations_id_contract-items_contractItemId",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContractItemDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update a contract item",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractItemCreateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Delete a contract item related to the organization",
        "description": "Contract items cannot be deleted once the contract they belong to has been signed<br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "DELETE_v1_organizations_id_contract-items_contractItemId",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/onboarding-info": {
      "get": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Returns onboarding info associated with the sku of a contract item related to the organization",
        "description": "<strong>Security policies</strong>: OrganizationContractOrGlobalContractDetailsView",
        "operationId": "GET_v1_organizations_id_contract-items_contractItemId_onboarding-info",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OnboardingInfoDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/billing-model-parameters": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update billing model params of contract item",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_billing-model-parameters",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractItemBillingModelParametersDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/sku-parameters": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update sku parameters of contract item",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_sku-parameters",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractItemSkuParametersDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/end-date": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update end date of contract item related to the organization",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_end-date",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractItemEndDateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/user-id": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update user id of contract item related to the organization",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_user-id",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UserIdDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/subscription-id": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update subscription id of contract item related to the organization",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_subscription-id",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubscriptionIdDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/status/active": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update status of contract item related to the organization to active",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_status_active",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/status/expired": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Update status of contract item related to the organization to expired",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2026-12-01.<br/><br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_status_expired",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contract-items/{contractItemId}/provisioning-dry-run": {
      "put": {
        "tags": [
          "Contract Items"
        ],
        "summary": "Perform dry-run validation for a contract item",
        "description": "<strong>Security policies</strong>: OrganizationContractOrGlobalContractDetailsView",
        "operationId": "PUT_v1_organizations_id_contract-items_contractItemId_provisioning-dry-run",
        "parameters": [
          {
            "name": "contractItemId",
            "in": "path",
            "description": "The identifier of the contract item",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractItemDryRunDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MultiOperationResponseDtoOfProvisioningValidationResultDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/contracts/{contractId}/contract-items": {
      "get": {
        "tags": [
          "Contract Items"
        ],
        "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This API is DEPRECATED and will be removed on 2026-04-01, use API GET '/v1/organizations/{id}/contracts/{contractId}/contract-items' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumerContractsView",
        "operationId": "GET_v1_organizations_id_consumers_consumerId_contracts_contractId_contract-items",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfContractItemDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/contract-items/{contractItemId}/signed-doc": {
      "get": {
        "tags": [
          "Contract Items"
        ],
        "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This API is DEPRECATED and will be removed on 2026-04-01, use API GET '/v1/organizations/{id}/contract-items/{contractItemId}/signed-doc' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumerContractsView",
        "operationId": "GET_v1_organizations_id_consumers_consumerId_contract-items_contractItemId_signed-doc",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contractItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts": {
      "get": {
        "tags": [
          "Contracts"
        ],
        "summary": "Return a paginated list of contracts related to the organization as party",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractView",
        "operationId": "GET_v1_organizations_id_contracts",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "query",
            "description": "The id of the consumer to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "The filter ODATA expression contracts by. If set exclude all other filters. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityId",
            "in": "query",
            "description": "The id of the legal entity to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issuerId",
            "in": "query",
            "description": "The id of the issuer to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ownerId",
            "in": "query",
            "description": "The id of the owner to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalRepresentativeId",
            "in": "query",
            "description": "The id of the legal representative to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchOnAnyRecipientsConsumerId",
            "in": "query",
            "description": "search consumer id on billing consumer id, owner id and legal representative id of the contract. (Default: Not applied)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The list of contract statuses for which contracts should be filtered. Is JSON array format. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "description": "The list of contract types for which contracts should be filtered. Is JSON array format. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDateFrom",
            "in": "query",
            "description": "The start date from of the contract. Example: 2023-11-28 (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDateTo",
            "in": "query",
            "description": "The start date to of the contract. Example: 2023-11-28 (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "number",
            "in": "query",
            "description": "The contract number to be used as filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "The order ODATA expression contracts by. If set exclude other sorts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The search term for filtering items. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "exact",
            "in": "query",
            "description": "Boolean which defines whether the params name and search must match exactly. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "The page number of pagination. (Default: 1)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The page size of pagination. (Default: 50, Max: 500)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "description": "Indicates whether the query should also return the total count of items (Default: true)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfContractDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "post": {
        "tags": [
          "Contracts"
        ],
        "summary": "Create a contract organization",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractCreate",
        "operationId": "POST_v1_organizations_id_contracts",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractCreateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IdDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/service-activation-group": {
      "get": {
        "tags": [
          "Contracts"
        ],
        "summary": "Return service activation group id by contract id",
        "description": "<strong>Security policies</strong>: OrganizationContractOrGlobalContractDetailsView",
        "operationId": "GET_v1_organizations_id_contracts_contractId_service-activation-group",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "Identifier for a organization",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contractId",
            "in": "path",
            "description": "Identifier for a contract",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceActivationGroupDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}": {
      "get": {
        "tags": [
          "Contracts"
        ],
        "summary": "Return a contract where given organization is party related in contract",
        "description": "<strong>Security policies</strong>: OrganizationContractOrGlobalContractDetailsView",
        "operationId": "GET_v1_organizations_id_contracts_contractId",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "signingExtraInfo",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "itemsInPendingExtraInfo",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "itemsContractDataConflictExtraInfo",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContractDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "put": {
        "tags": [
          "Contracts"
        ],
        "summary": "Update a contract",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contracts_contractId",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractCreateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      },
      "delete": {
        "tags": [
          "Contracts"
        ],
        "summary": "Delete an organization's contract",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "DELETE_v1_organizations_id_contracts_contractId",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MultiOperationsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/end-date": {
      "put": {
        "tags": [
          "Contracts"
        ],
        "summary": "Update end date of contract",
        "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This API is DEPRECATED and will be removed on 2026-05-01. Reason: The end date of a contract has been removed. It doesn't do anything anymore..<br/><br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contracts_contractId_end-date",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ContractEndDateDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/status/final": {
      "put": {
        "tags": [
          "Contracts"
        ],
        "summary": "Update status of contract to final",
        "description": "The main requirement to go in \"Final\" status is to be in “Draft” status and not have any \"Pending\" items<br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contracts_contractId_status_final",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sendNotification",
            "in": "query",
            "description": "Optional flag to control whether contract ready email notification should be sent. When false or not provided, no email is sent.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContractStatusUpdateResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/status/expired": {
      "put": {
        "tags": [
          "Contracts"
        ],
        "summary": "Update status of organization's contract to expired",
        "description": "The contract must be in Completed status<br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contracts_contractId_status_expired",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/contracts": {
      "get": {
        "tags": [
          "Contracts"
        ],
        "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This API is DEPRECATED and will be removed on 2026-04-01, use API GET '/v1/organizations/{id}/contracts' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumerContractsView",
        "operationId": "GET_v1_organizations_id_consumers_consumerId_contracts",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "The filter ODATA expression contracts by. If set exclude all other filters. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityId",
            "in": "query",
            "description": "The id of the legal entity to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issuerId",
            "in": "query",
            "description": "The id of the issuer to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ownerId",
            "in": "query",
            "description": "The id of the owner to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalRepresentativeId",
            "in": "query",
            "description": "The id of the legal representative to be used as second party filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "searchOnAnyRecipientsConsumerId",
            "in": "query",
            "description": "search consumer id on billing consumer id, owner id and legal representative id of the contract. (Default: Not applied)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The list of contract statuses for which contracts should be filtered. Is JSON array format. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "type",
            "in": "query",
            "description": "The list of contract types for which contracts should be filtered. Is JSON array format. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDateFrom",
            "in": "query",
            "description": "The start date from of the contract. Example: 2023-11-28 (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startDateTo",
            "in": "query",
            "description": "The start date to of the contract. Example: 2023-11-28 (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "number",
            "in": "query",
            "description": "The contract number to be used as filter in contracts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "The order ODATA expression contracts by. If set exclude other sorts. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "description": "The search term for filtering items. (Default: Not applied)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "exact",
            "in": "query",
            "description": "Boolean which defines whether the params name and search must match exactly. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "The page number of pagination. (Default: 1)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "The page size of pagination. (Default: 50, Max: 500)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "shouldCount",
            "in": "query",
            "description": "Indicates whether the query should also return the total count of items (Default: true)",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginationDtoOfContractDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/consumers/{consumerId}/contracts/{contractId}": {
      "get": {
        "tags": [
          "Contracts"
        ],
        "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This API is DEPRECATED and will be removed on 2026-04-01, use API GET '/v1/organizations/{id}/contracts/{contractId}' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationsConsumerContractsView",
        "operationId": "GET_v1_organizations_id_consumers_consumerId_contracts_contractId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContractDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/contracts/{contractId}/status/pending": {
      "put": {
        "tags": [
          "Contracts"
        ],
        "summary": "Update status of contract to pending",
        "description": "<b>⚠️ DEPRECATED ⚠️</b>: This API is DEPRECATED and will be removed on 2026-11-01, use API PUT '/v1/contracts/{contractId}/status/final' instead.<br/><br/><br/><strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_contracts_contractId_status_pending",
        "parameters": [
          {
            "name": "contractId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/counters-aggregated/consumers/{consumerId}": {
      "get": {
        "tags": [
          "Counters"
        ],
        "summary": "Get product counters as aggregated for a consumer based on related consumer associated to given organization.",
        "description": "<strong>Security policies</strong>: OrganizationsCountersView",
        "operationId": "GET_v1_organizations_id_counters-aggregated_consumers_consumerId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The identifier of the organization which associated consumer should be used as parent consumer filter for given\r\nchild consumer\r\naggregated counters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The consumer identifier for which aggregated counters are desired.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productId",
            "in": "query",
            "description": "The product identifier for which consumer's aggregated counters should be filtered.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "metricId",
            "in": "query",
            "description": "The list of metric identifiers for which consumer's aggregated counters should be filtered.\r\nIs JSON array format.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityId",
            "in": "query",
            "description": "The legal entity identifier for which consumer's aggregated consumcountersptions should be\r\nfiltered.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "rootPath",
            "in": "query",
            "description": "The root path for which consumer's aggregated counters should be filtered (activated with\r\nstrict at true).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "year",
            "in": "query",
            "description": "The year for which consumer's aggregated counters should be filtered.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "attributeId",
            "in": "query",
            "description": "The attribute identifier for which consumer's aggregated counters should be filtered.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "strict",
            "in": "query",
            "description": "Boolean which defines whether or not to strictly activate given filter params. (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "integratorId",
            "in": "query",
            "description": "The integrator identifier for which aggregated counters are desired (activated with\r\nstrict at true).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "owner",
            "in": "query",
            "description": "Boolean which defines whether only counters directly owned by provided consumerId should be\r\nreturned (activated with strict at true). (Default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CountersAggregatedConsumerDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/product-metrics/consumers/{consumerId}": {
      "get": {
        "tags": [
          "Product Metrics"
        ],
        "summary": "Get product metrics for a consumer based on related consumer associated to given organization.",
        "description": "<strong>Security policies</strong>: OrganizationsMetricsView",
        "operationId": "GET_v1_organizations_id_product-metrics_consumers_consumerId",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The identifier of the organization which associated consumer should be used as parent consumer filter for given\r\nchild consumer\r\nmetrics.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "consumerId",
            "in": "path",
            "description": "The ID of the consumer for which metrics are desired.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "legalEntityMode",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListDtoOfProductMetricsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/service-activation-groups/{serviceActivationGroupId}/confirm": {
      "put": {
        "tags": [
          "Service Activation Groups"
        ],
        "summary": "Advance status of service activation group to 'Confirmed'",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEditByOrganization",
        "operationId": "PUT_v1_organizations_id_service-activation-groups_serviceActivationGroupId_confirm",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "serviceActivationGroupId",
            "in": "path",
            "description": "Id of group",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sendNotification",
            "in": "query",
            "description": "Optional flag to control whether contract ready email notification should be sent. When false or not provided, no email is sent.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServiceActivationGroupConfirmResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/service-activation-groups": {
      "post": {
        "tags": [
          "Service Activation Groups"
        ],
        "summary": "Create a service activation group",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractCreate",
        "operationId": "POST_v1_organizations_id_service-activation-groups",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ServiceActivationGroupBaseDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/service-activation-groups/{serviceActivationGroupId}/add-contracts": {
      "put": {
        "tags": [
          "Service Activation Groups"
        ],
        "summary": "Add contracts to an existing service activation group",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_service-activation-groups_serviceActivationGroupId_add-contracts",
        "parameters": [
          {
            "name": "serviceActivationGroupId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ServiceActivationGroupContractsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    },
    "/v1/organizations/{id}/service-activation-groups/{serviceActivationGroupId}/remove-contracts": {
      "put": {
        "tags": [
          "Service Activation Groups"
        ],
        "summary": "Remove contracts from an existing service activation group",
        "description": "<strong>Security policies</strong>: OrganizationOrGlobalContractEdit",
        "operationId": "PUT_v1_organizations_id_service-activation-groups_serviceActivationGroupId_remove-contracts",
        "parameters": [
          {
            "name": "serviceActivationGroupId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ServiceActivationGroupContractsDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "405": {
            "description": "Method Not Allowed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDto"
                }
              }
            }
          }
        },
        "security": [
          {
            "OpenIdConnect": []
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "AsnEncodedData": {
        "type": "object",
        "properties": {
          "oid": {
            "$ref": "#/components/schemas/Oid"
          },
          "rawData": {
            "type": "string",
            "format": "byte"
          }
        },
        "additionalProperties": false
      },
      "AsymmetricAlgorithm": {
        "type": "object",
        "properties": {
          "keySize": {
            "type": "integer",
            "format": "int32"
          },
          "legalKeySizes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/KeySizes"
            },
            "readOnly": true
          },
          "signatureAlgorithm": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "keyExchangeAlgorithm": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "AttributeDto": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "minLength": 1,
            "type": "string",
            "description": "id of the attribute",
            "example": "your-attribute"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dictionary of attribute's label localized in different languages\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the label in english must be always present\r\ne.g. {\r\n    \"en\": \"attribute label in english\",\r\n    \"it\": \"label dell'attributo in italiano\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "example": {
              "en": "attribute label in english",
              "it": "label dell'attributo in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          }
        },
        "additionalProperties": false
      },
      "BillingModelBaseDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Unique name identifier of this billing model"
          },
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Description for this billing model"
          },
          "parameters": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/ContractBaseParameterDto"
            },
            "description": "Parameters used for computation of the billing model"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BillingModelItemDto"
            },
            "description": "List of skus linked to this billing model"
          }
        },
        "additionalProperties": false
      },
      "BillingModelItemDto": {
        "type": "object",
        "properties": {
          "skuId": {
            "type": "string",
            "description": "Sku code"
          },
          "sku": {
            "type": "string",
            "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This property is DEPRECATED and will be removed on 2026-04-01, use property 'SkuId' instead.<br/>",
            "deprecated": true
          }
        },
        "additionalProperties": false,
        "description": "Item of sku cluster used in billing model"
      },
      "BusinessRelationDto": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "description": "Product identifier.",
            "example": "eSAW"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier.",
            "example": "4eb8a4d7-ec5a-48ba-b3b4-4cbe913e7691"
          },
          "consumerIdsPath": {
            "type": "string",
            "description": "Path of consumer identifiers.",
            "example": "0d7c80ad-fd7f-40ef-9d97-b05dcf6ef911/2a0e7122-f9d3-42cf-b14e-87b5c26c7f69"
          },
          "integratorId": {
            "type": "string",
            "description": "Integrator identifier (An optional property and default is an empty string).",
            "example": "integrator-id"
          },
          "integratorLabel": {
            "type": "string",
            "description": "Integrator label (An optional property used to replace the provided integratorId with a human-readable label).",
            "example": "integrator-label"
          },
          "originId": {
            "type": "string",
            "description": "Origin business relation identifier.",
            "nullable": true,
            "example": "2586e4f4-3eb5-4310-ada0-e30033101386"
          },
          "resourceType": {
            "enum": [
              "Consumption",
              "Contract"
            ],
            "type": "string",
            "description": "Resource type.",
            "format": "int32",
            "example": "Consumption"
          },
          "disabled": {
            "type": "boolean",
            "description": "Whether this business relation is disabled for consumption inputs."
          },
          "id": {
            "type": "string",
            "description": "Identifier of the business relation.",
            "example": "4ec74e45-8262-469c-8182-7c23af8ed44e"
          },
          "legalEntityName": {
            "type": "string",
            "description": "Name of legal entity.",
            "nullable": true,
            "example": "NAMIRIAL S.P.A."
          },
          "consumerNamesPath": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Name of consumers in the path of consumer identifiers.",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ConsumerAdditionalInfosDto": {
        "type": "object",
        "properties": {
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer.",
            "example": {
              "your-property": "value of property"
            }
          }
        },
        "additionalProperties": false
      },
      "ConsumerBaseWithoutCrmDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the consumer.\n",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the individual customer.\n"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the individual customer.\n"
          },
          "customerType": {
            "enum": [
              "None",
              "ProfessionalIndividual",
              "Corporate",
              "PublicAdministration",
              "NonProfit",
              "PrivateIndividual"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, PrivateIndividual, ProfessionalIndividual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n---------------------------------------------------------------\n\r\n| CustomerType........ | TaxCode1  | TaxCode2    | TaxCode3   |\n\r\n| CustomerType........ | (VAT)     | (TAXNUMBER) | (PANUMBER) |\n\r\n---------------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11.. | empty..... |\n\r\n| NonProfit........... | empty.... | length 29.. | empty..... |\n\r\n| Corporate........... | length 11 | length 11.. | empty..... |\n\r\n| Corporate........... | length 29 | length 11.. | empty..... |\n\r\n| Corporate........... | length 29 | length 29.. | empty..... |\n\r\n| PrivateIndividual... | empty.... | length 16.. | empty..... |\n\r\n| ProfessionalIndividual | length 11 | length 16.. | empty..... |\n\r\n| ProfessionalIndividual | length 29 | length 16.. | empty..... |\n\r\n| PublicAdministration | empty.... | length 11.. | length 6.. |\n\r\n| PublicAdministration | empty.... | length 29.. | length 6.. |\n\r\n| PublicAdministration | length 11 | length 11.. | length 6.. |\n\r\n| PublicAdministration | length 29 | length 11.. | length 6.. |\n\r\n| PublicAdministration | length 29 | length 29.. | length 6.. |\n\r\n---------------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with TaxCode1.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor FRENCH consumers:\n\r\nValid values are: PrivateIndividual, ProfessionalIndividual, Corporate\n\r\nAuto mode is not provided\n\n\r\nFor all other consumers:\n\r\nValid values are: PrivateIndividual, ProfessionalIndividual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "taxCode1": {
            "type": "string",
            "description": "Tax code 1 of the consumer.\n\n\r\nFor ITALIAN consumers is VAT:\n\r\nREGULAR VAT:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is TVA:\n\r\nREGULAR TVA:\n\r\n- Length is 13 chars: prefix \"FR\" + 2 chars (A-HJ-NP-Z0-9) + 9 digits.\n\r\n- Valid characters are digits (0-9) and uppercase letters (A-Z), excluding I and O.\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY TVA:\n\r\n- The temporary TVA is used only for customers that do not have a regular TVA yet.\n\r\n- The temporary TVA is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode2": {
            "type": "string",
            "description": "Tax code 2 of the consumer.\n\n\r\nFor ITALIAN consumers is TAXNUMBER:\n\r\nPERSON TAXNUMBER:\n\r\n- Length is 16 chars.\n\r\n- Valid characters are digits and letters (0-9, A-Z).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nREGULAR TAXNUMBER:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nTEMPORARY TAXNUMBER:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n- Only for: Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is SIREN:\n\r\nREGULAR SIREN:\n\r\n- Length is 9 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIREN:\n\r\n- The temporary SIREN is used only for customers that do not have a regular SIREN yet.\n\r\n- The temporary SIREN is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode3": {
            "type": "string",
            "description": "Tax code 3 of the consumer.\n\n\r\nFor ITALIAN consumers is PANUMBER:\n\r\nREGULAR PANUMBER:\n\r\n- Length is 6 chars.\n\r\n- Valid characters are uppercase letters (A-Z) and digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, InternalUnit\n\n\r\nFor FRENCH consumers is SIRET:\n\r\nREGULAR SIRET:\n\r\n- Length is 14 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIRET:\n\r\n- The temporary SIRET is used only for customers that do not have a regular SIRET yet.\n\r\n- The temporary SIRET is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "isValidatedTaxCodes": {
            "type": "boolean",
            "description": "Indicates whether the tax codes have been validated against country-specific standards\r\n(VAT/TaxNumber/PaNumber for Italy, Tva/Siren/Siret for France).\r\nAssigned exclusively by backend rules — ignored on input."
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer.",
            "example": {
              "your-property": "value of property"
            }
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ConsumerBirthInfoDto"
          },
          "residenceInfo": {
            "$ref": "#/components/schemas/ConsumerResidenceInfoDto"
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ConsumerBaseWithoutCrmDtoV1": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the consumer.\n",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the individual customer.\n"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the individual customer.\n"
          },
          "customerType": {
            "enum": [
              "None",
              "Individual",
              "Corporate",
              "PublicAdministration",
              "NonProfit"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n-------------------------------------------------------------------\n\r\n| CustomerType........ | Vat...... | TaxNumber | PaNumber |\n\r\n-------------------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11 | empty... |\n\r\n| NonProfit........... | empty.... | length 29 | empty... |\n\r\n| Corporate........... | length 11 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 29 | empty... |\n\r\n| Individual.......... | empty.... | length 16 | empty... |\n\r\n| Individual.......... | length 11 | length 16 | empty... |\n\r\n| Individual.......... | length 29 | length 16 | empty... |\n\r\n| PublicAdministration | empty.... | length 11 | length 6 |\n\r\n| PublicAdministration | empty.... | length 29 | length 6 |\n\r\n| PublicAdministration | length 11 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 29 | length 6 |\n\r\n-------------------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with Vat.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "vat": {
            "type": "string",
            "description": "Vat of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nREGULAR VAT:\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-Individual, Customer-NonProfit, Customer-Public-Administration\n\r\nMust be empty for: InternalUnit\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nPERSON TAXNUMBER (16 chars). Only for Customer-Individual\n\r\n- Length is 16 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9, A-Z).\n\r\nREGULAR TAXNUMBER (11 chars). Only for LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY TAXNUMBER (29 chars). Only for Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n            \r\nMust be empty for: InternalUnit\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "paNumber": {
            "type": "string",
            "description": "PA number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z) and numbers (0-9). The format is validated with italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-Individual, Customer-NonProfit, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit",
            "example": "UFCGFV"
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer.",
            "example": {
              "your-property": "value of property"
            }
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ConsumerBirthInfoDto"
          },
          "residenceInfo": {
            "$ref": "#/components/schemas/ConsumerResidenceInfoDto"
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ConsumerBillingInfosDto": {
        "type": "object",
        "properties": {
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "nullable": true,
            "example": [
              "info@namirial.com"
            ]
          }
        },
        "additionalProperties": false
      },
      "ConsumerBirthInfoDto": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "Date of birth.",
            "format": "date"
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "description": "Gender.",
            "format": "int32"
          },
          "country": {
            "type": "string",
            "description": "Country code of birth."
          },
          "state": {
            "type": "string",
            "description": "State code of birth."
          },
          "city": {
            "type": "string",
            "description": "City of birth."
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code of birth."
          }
        },
        "additionalProperties": false
      },
      "ConsumerContactInfosDto": {
        "type": "object",
        "properties": {
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+393384234567"
            ]
          }
        },
        "additionalProperties": false
      },
      "ConsumerCrmSnapshotDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "CRM consumer identifier."
          },
          "name": {
            "type": "string",
            "description": "CRM consumer name."
          },
          "type": {
            "enum": [
              "Unknown",
              "Corporate",
              "ProfessionalIndividual"
            ],
            "type": "string",
            "description": "CRM consumer type.",
            "format": "int32"
          },
          "country": {
            "type": "string",
            "description": "CRM consumer country code."
          },
          "vat": {
            "type": "string",
            "description": "CRM consumer VAT number."
          },
          "taxNumber": {
            "type": "string",
            "description": "CRM consumer tax number."
          },
          "sdi": {
            "type": "string",
            "description": "CRM consumer SDI code."
          },
          "address": {
            "type": "string",
            "description": "CRM consumer address."
          },
          "city": {
            "type": "string",
            "description": "CRM consumer city."
          },
          "state": {
            "type": "string",
            "description": "CRM consumer state."
          },
          "postalCode": {
            "type": "string",
            "description": "CRM consumer postal code."
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "CRM consumer phones."
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "CRM consumer emails."
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "CRM consumer pecs."
          },
          "segment": {
            "type": "string",
            "description": "CRM consumer segment."
          },
          "subSegment": {
            "type": "string",
            "description": "CRM consumer sub-segment."
          }
        },
        "additionalProperties": false
      },
      "ConsumerDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the consumer.\n",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the individual customer.\n"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the individual customer.\n"
          },
          "customerType": {
            "enum": [
              "None",
              "ProfessionalIndividual",
              "Corporate",
              "PublicAdministration",
              "NonProfit",
              "PrivateIndividual"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, PrivateIndividual, ProfessionalIndividual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n---------------------------------------------------------------\n\r\n| CustomerType........ | TaxCode1  | TaxCode2    | TaxCode3   |\n\r\n| CustomerType........ | (VAT)     | (TAXNUMBER) | (PANUMBER) |\n\r\n---------------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11.. | empty..... |\n\r\n| NonProfit........... | empty.... | length 29.. | empty..... |\n\r\n| Corporate........... | length 11 | length 11.. | empty..... |\n\r\n| Corporate........... | length 29 | length 11.. | empty..... |\n\r\n| Corporate........... | length 29 | length 29.. | empty..... |\n\r\n| PrivateIndividual... | empty.... | length 16.. | empty..... |\n\r\n| ProfessionalIndividual | length 11 | length 16.. | empty..... |\n\r\n| ProfessionalIndividual | length 29 | length 16.. | empty..... |\n\r\n| PublicAdministration | empty.... | length 11.. | length 6.. |\n\r\n| PublicAdministration | empty.... | length 29.. | length 6.. |\n\r\n| PublicAdministration | length 11 | length 11.. | length 6.. |\n\r\n| PublicAdministration | length 29 | length 11.. | length 6.. |\n\r\n| PublicAdministration | length 29 | length 29.. | length 6.. |\n\r\n---------------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with TaxCode1.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor FRENCH consumers:\n\r\nValid values are: PrivateIndividual, ProfessionalIndividual, Corporate\n\r\nAuto mode is not provided\n\n\r\nFor all other consumers:\n\r\nValid values are: PrivateIndividual, ProfessionalIndividual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "taxCode1": {
            "type": "string",
            "description": "Tax code 1 of the consumer.\n\n\r\nFor ITALIAN consumers is VAT:\n\r\nREGULAR VAT:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is TVA:\n\r\nREGULAR TVA:\n\r\n- Length is 13 chars: prefix \"FR\" + 2 chars (A-HJ-NP-Z0-9) + 9 digits.\n\r\n- Valid characters are digits (0-9) and uppercase letters (A-Z), excluding I and O.\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY TVA:\n\r\n- The temporary TVA is used only for customers that do not have a regular TVA yet.\n\r\n- The temporary TVA is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode2": {
            "type": "string",
            "description": "Tax code 2 of the consumer.\n\n\r\nFor ITALIAN consumers is TAXNUMBER:\n\r\nPERSON TAXNUMBER:\n\r\n- Length is 16 chars.\n\r\n- Valid characters are digits and letters (0-9, A-Z).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nREGULAR TAXNUMBER:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nTEMPORARY TAXNUMBER:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n- Only for: Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is SIREN:\n\r\nREGULAR SIREN:\n\r\n- Length is 9 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIREN:\n\r\n- The temporary SIREN is used only for customers that do not have a regular SIREN yet.\n\r\n- The temporary SIREN is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode3": {
            "type": "string",
            "description": "Tax code 3 of the consumer.\n\n\r\nFor ITALIAN consumers is PANUMBER:\n\r\nREGULAR PANUMBER:\n\r\n- Length is 6 chars.\n\r\n- Valid characters are uppercase letters (A-Z) and digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, InternalUnit\n\n\r\nFor FRENCH consumers is SIRET:\n\r\nREGULAR SIRET:\n\r\n- Length is 14 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIRET:\n\r\n- The temporary SIRET is used only for customers that do not have a regular SIRET yet.\n\r\n- The temporary SIRET is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "isValidatedTaxCodes": {
            "type": "boolean",
            "description": "Indicates whether the tax codes have been validated against country-specific standards\r\n(VAT/TaxNumber/PaNumber for Italy, Tva/Siren/Siret for France).\r\nAssigned exclusively by backend rules — ignored on input."
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer.",
            "example": {
              "your-property": "value of property"
            }
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ConsumerBirthInfoDto"
          },
          "residenceInfo": {
            "$ref": "#/components/schemas/ConsumerResidenceInfoDto"
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "Identifier of the consumer.",
            "example": "6dcd885f-a37b-427f-ab59-d008ae134aab"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Associated legal entity identifier",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConsumerDtoV1": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the consumer.\n",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the individual customer.\n"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the individual customer.\n"
          },
          "customerType": {
            "enum": [
              "None",
              "Individual",
              "Corporate",
              "PublicAdministration",
              "NonProfit"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n-------------------------------------------------------------------\n\r\n| CustomerType........ | Vat...... | TaxNumber | PaNumber |\n\r\n-------------------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11 | empty... |\n\r\n| NonProfit........... | empty.... | length 29 | empty... |\n\r\n| Corporate........... | length 11 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 29 | empty... |\n\r\n| Individual.......... | empty.... | length 16 | empty... |\n\r\n| Individual.......... | length 11 | length 16 | empty... |\n\r\n| Individual.......... | length 29 | length 16 | empty... |\n\r\n| PublicAdministration | empty.... | length 11 | length 6 |\n\r\n| PublicAdministration | empty.... | length 29 | length 6 |\n\r\n| PublicAdministration | length 11 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 29 | length 6 |\n\r\n-------------------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with Vat.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "vat": {
            "type": "string",
            "description": "Vat of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nREGULAR VAT:\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-Individual, Customer-NonProfit, Customer-Public-Administration\n\r\nMust be empty for: InternalUnit\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nPERSON TAXNUMBER (16 chars). Only for Customer-Individual\n\r\n- Length is 16 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9, A-Z).\n\r\nREGULAR TAXNUMBER (11 chars). Only for LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY TAXNUMBER (29 chars). Only for Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n            \r\nMust be empty for: InternalUnit\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "paNumber": {
            "type": "string",
            "description": "PA number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z) and numbers (0-9). The format is validated with italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-Individual, Customer-NonProfit, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit",
            "example": "UFCGFV"
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer.",
            "example": {
              "your-property": "value of property"
            }
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ConsumerBirthInfoDto"
          },
          "residenceInfo": {
            "$ref": "#/components/schemas/ConsumerResidenceInfoDto"
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "Identifier of the consumer.",
            "example": "6dcd885f-a37b-427f-ab59-d008ae134aab"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Associated legal entity identifier.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConsumerGeneralInfosDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the consumer.\n\r\nMax length is 100 chars.",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the individual customer.\n"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the individual customer.\n"
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "customerType": {
            "enum": [
              "None",
              "ProfessionalIndividual",
              "Corporate",
              "PublicAdministration",
              "NonProfit",
              "PrivateIndividual"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, PrivateIndividual, ProfessionalIndividual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n-----------------------------------------------------------\n\r\n| CustomerType........ | Vat...... | TaxNumber | PaNumber |\n\r\n-----------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11 | empty... |\n\r\n| NonProfit........... | empty.... | length 29 | empty... |\n\r\n| Corporate........... | length 11 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 29 | empty... |\n\r\n| PrivateIndividual.. | empty.... | length 16 | empty... |\n\r\n| ProfessionalIndividual | length 11 | length 16 | empty... |\n\r\n| ProfessionalIndividual | length 29 | length 16 | empty... |\n\r\n| PublicAdministration | empty.... | length 11 | length 6 |\n\r\n| PublicAdministration | empty.... | length 29 | length 6 |\n\r\n| PublicAdministration | length 11 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 29 | length 6 |\n\r\n-----------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with Vat.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid values are: None, PrivateIndividual, ProfessionalIndividual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          }
        },
        "additionalProperties": false
      },
      "ConsumerGeneralInfosDtoV1": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the consumer.\n\r\nMax length is 100 chars.",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the individual customer.\n"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the individual customer.\n"
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "customerType": {
            "enum": [
              "None",
              "Individual",
              "Corporate",
              "PublicAdministration",
              "NonProfit"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n-----------------------------------------------------------\n\r\n| CustomerType........ | Vat...... | TaxNumber | PaNumber |\n\r\n-----------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11 | empty... |\n\r\n| NonProfit........... | empty.... | length 29 | empty... |\n\r\n| Corporate........... | length 11 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 29 | empty... |\n\r\n| Individual.......... | empty.... | length 16 | empty... |\n\r\n| Individual.......... | length 11 | length 16 | empty... |\n\r\n| Individual.......... | length 29 | length 16 | empty... |\n\r\n| PublicAdministration | empty.... | length 11 | length 6 |\n\r\n| PublicAdministration | empty.... | length 29 | length 6 |\n\r\n| PublicAdministration | length 11 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 29 | length 6 |\n\r\n-----------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with Vat.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          }
        },
        "additionalProperties": false
      },
      "ConsumerPathItemDto": {
        "type": "object",
        "properties": {
          "consumerId": {
            "type": "string"
          },
          "consumerName": {
            "type": "string"
          },
          "legalEntityId": {
            "type": "string"
          },
          "legalEntityName": {
            "type": "string"
          },
          "integratorId": {
            "type": "string"
          },
          "integratorLabel": {
            "type": "string"
          },
          "expand": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ConsumerPathWithNameDto": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string"
          },
          "parentConsumerId": {
            "type": "string"
          },
          "consumerId": {
            "type": "string"
          },
          "legalEntityId": {
            "type": "string"
          },
          "parentConsumerName": {
            "type": "string"
          },
          "consumerName": {
            "type": "string"
          },
          "legalEntityName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ConsumerResidenceInfoAndTaxNumberDtoV1": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string",
            "description": "Country of residence."
          },
          "address": {
            "type": "string",
            "description": "Address of residence."
          },
          "state": {
            "type": "string",
            "description": "State of residence."
          },
          "city": {
            "type": "string",
            "description": "City of residence."
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code of the city of residence."
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the consumer (maps to TaxCode2).",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConsumerResidenceInfoDto": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string",
            "description": "Country of residence."
          },
          "address": {
            "type": "string",
            "description": "Address of residence."
          },
          "state": {
            "type": "string",
            "description": "State of residence."
          },
          "city": {
            "type": "string",
            "description": "City of residence."
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code of the city of residence."
          },
          "personalCode": {
            "type": "string",
            "description": "Personal code of the consumer. (optional)\n\r\nOnly for Customer PrivateIndividual and ProfessionalIndividual consumers.\n\r\nFor ITALIAN consumers with Italian residence: length 16 chars, validated with italian specifications.\n\r\nFor FRENCH consumers with French residence: length 15 chars, validated with french NIR specifications.\n\r\nMust be empty for all other consumer types and for residence countries other than IT/FR."
          }
        },
        "additionalProperties": false
      },
      "ConsumerTaxInfosDto": {
        "type": "object",
        "properties": {
          "taxCode1": {
            "type": "string",
            "description": "Tax code 1 of the consumer.\n\n\r\nFor ITALIAN consumers is VAT:\n\r\nREGULAR VAT:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is TVA:\n\r\nREGULAR TVA:\n\r\n- Length is 13 chars: prefix \"FR\" + 2 chars (A-HJ-NP-Z0-9) + 9 digits.\n\r\n- Valid characters are digits (0-9) and uppercase letters (A-Z), excluding I and O.\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY TVA:\n\r\n- The temporary TVA is used only for customers that do not have a regular TVA yet.\n\r\n- The temporary TVA is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode2": {
            "type": "string",
            "description": "Tax code 2 of the consumer.\n\n\r\nFor ITALIAN consumers is TAXNUMBER:\n\r\nPERSON TAXNUMBER:\n\r\n- Length is 16 chars.\n\r\n- Valid characters are digits and letters (0-9, A-Z).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nREGULAR TAXNUMBER:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nTEMPORARY TAXNUMBER:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n- Only for: Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is SIREN:\n\r\nREGULAR SIREN:\n\r\n- Length is 9 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIREN:\n\r\n- The temporary SIREN is used only for customers that do not have a regular SIREN yet.\n\r\n- The temporary SIREN is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode3": {
            "type": "string",
            "description": "Tax code 3 of the consumer.\n\n\r\nFor ITALIAN consumers is PANUMBER:\n\r\nREGULAR PANUMBER:\n\r\n- Length is 6 chars.\n\r\n- Valid characters are uppercase letters (A-Z) and digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, InternalUnit\n\n\r\nFor FRENCH consumers is SIRET:\n\r\nREGULAR SIRET:\n\r\n- Length is 14 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIRET:\n\r\n- The temporary SIRET is used only for customers that do not have a regular SIRET yet.\n\r\n- The temporary SIRET is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit",
            "example": "UFCGFV"
          }
        },
        "additionalProperties": false
      },
      "ConsumerTaxInfosDtoV1": {
        "type": "object",
        "properties": {
          "vat": {
            "type": "string",
            "description": "VAT number of the consumer (maps to TaxCode1)."
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the consumer (maps to TaxCode2)."
          },
          "paNumber": {
            "type": "string",
            "description": "PA number of the consumer (maps to TaxCode3)."
          }
        },
        "additionalProperties": false
      },
      "ConsumerWithExtraInfoDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the consumer.\n",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "First name of the individual customer.\n"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the individual customer.\n"
          },
          "customerType": {
            "enum": [
              "None",
              "ProfessionalIndividual",
              "Corporate",
              "PublicAdministration",
              "NonProfit",
              "PrivateIndividual"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, PrivateIndividual, ProfessionalIndividual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n---------------------------------------------------------------\n\r\n| CustomerType........ | TaxCode1  | TaxCode2    | TaxCode3   |\n\r\n| CustomerType........ | (VAT)     | (TAXNUMBER) | (PANUMBER) |\n\r\n---------------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11.. | empty..... |\n\r\n| NonProfit........... | empty.... | length 29.. | empty..... |\n\r\n| Corporate........... | length 11 | length 11.. | empty..... |\n\r\n| Corporate........... | length 29 | length 11.. | empty..... |\n\r\n| Corporate........... | length 29 | length 29.. | empty..... |\n\r\n| PrivateIndividual... | empty.... | length 16.. | empty..... |\n\r\n| ProfessionalIndividual | length 11 | length 16.. | empty..... |\n\r\n| ProfessionalIndividual | length 29 | length 16.. | empty..... |\n\r\n| PublicAdministration | empty.... | length 11.. | length 6.. |\n\r\n| PublicAdministration | empty.... | length 29.. | length 6.. |\n\r\n| PublicAdministration | length 11 | length 11.. | length 6.. |\n\r\n| PublicAdministration | length 29 | length 11.. | length 6.. |\n\r\n| PublicAdministration | length 29 | length 29.. | length 6.. |\n\r\n---------------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with TaxCode1.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor FRENCH consumers:\n\r\nValid values are: PrivateIndividual, ProfessionalIndividual, Corporate\n\r\nAuto mode is not provided\n\n\r\nFor all other consumers:\n\r\nValid values are: PrivateIndividual, ProfessionalIndividual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "taxCode1": {
            "type": "string",
            "description": "Tax code 1 of the consumer.\n\n\r\nFor ITALIAN consumers is VAT:\n\r\nREGULAR VAT:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is TVA:\n\r\nREGULAR TVA:\n\r\n- Length is 13 chars: prefix \"FR\" + 2 chars (A-HJ-NP-Z0-9) + 9 digits.\n\r\n- Valid characters are digits (0-9) and uppercase letters (A-Z), excluding I and O.\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY TVA:\n\r\n- The temporary TVA is used only for customers that do not have a regular TVA yet.\n\r\n- The temporary TVA is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode2": {
            "type": "string",
            "description": "Tax code 2 of the consumer.\n\n\r\nFor ITALIAN consumers is TAXNUMBER:\n\r\nPERSON TAXNUMBER:\n\r\n- Length is 16 chars.\n\r\n- Valid characters are digits and letters (0-9, A-Z).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nREGULAR TAXNUMBER:\n\r\n- Length is 11 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\n- Only for: LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nTEMPORARY TAXNUMBER:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n- Only for: Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\nMust be empty for: InternalUnit\n\n\r\nFor FRENCH consumers is SIREN:\n\r\nREGULAR SIREN:\n\r\n- Length is 9 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIREN:\n\r\n- The temporary SIREN is used only for customers that do not have a regular SIREN yet.\n\r\n- The temporary SIREN is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "taxCode3": {
            "type": "string",
            "description": "Tax code 3 of the consumer.\n\n\r\nFor ITALIAN consumers is PANUMBER:\n\r\nREGULAR PANUMBER:\n\r\n- Length is 6 chars.\n\r\n- Valid characters are uppercase letters (A-Z) and digits (0-9).\n\r\n- The format is validated with Italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual, Customer-NonProfit, InternalUnit\n\n\r\nFor FRENCH consumers is SIRET:\n\r\nREGULAR SIRET:\n\r\n- Length is 14 digits.\n\r\n- Valid characters are digits (0-9).\n\r\n- The format is validated with French specifications.\n\r\nTEMPORARY SIRET:\n\r\n- The temporary SIRET is used only for customers that do not have a regular SIRET yet.\n\r\n- The temporary SIRET is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-ProfessionalIndividual\n\r\nMust be empty for: Customer-PrivateIndividual, Customer-NonProfit, Customer-PublicAdministration, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit"
          },
          "isValidatedTaxCodes": {
            "type": "boolean",
            "description": "Indicates whether the tax codes have been validated against country-specific standards\r\n(VAT/TaxNumber/PaNumber for Italy, Tva/Siren/Siret for France).\r\nAssigned exclusively by backend rules — ignored on input."
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n\r\nIs validated for consumer country.",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer.",
            "example": {
              "your-property": "value of property"
            }
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ConsumerBirthInfoDto"
          },
          "residenceInfo": {
            "$ref": "#/components/schemas/ConsumerResidenceInfoDto"
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "description": "Identifier of the consumer.",
            "example": "6dcd885f-a37b-427f-ab59-d008ae134aab"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Associated legal entity identifier",
            "nullable": true
          },
          "crmId": {
            "type": "string",
            "description": "CRM consumer identifier."
          },
          "crmSnapshot": {
            "$ref": "#/components/schemas/ConsumerCrmSnapshotDto"
          },
          "hasContracts": {
            "type": "boolean",
            "description": "Indicates whether the consumer has contracts."
          }
        },
        "additionalProperties": false
      },
      "ConsumptionAggregatedDto": {
        "type": "object",
        "properties": {
          "metricId": {
            "type": "string",
            "description": "id of the metric on which the consumption has been registered"
          },
          "datestamp": {
            "type": "string",
            "description": "datetime (ISO 8601) on which the consumption has been registered",
            "format": "date-time"
          },
          "value": {
            "type": "number",
            "description": "value of the consumption",
            "format": "double"
          },
          "businessRelationId": {
            "type": "string",
            "description": "business relation when grouping (only if aggregation is of only one business relation)"
          },
          "attributeId": {
            "type": "string",
            "description": "attribute identifier when grouping with attribute id is enabled"
          },
          "attributeValue": {
            "type": "string",
            "description": "attribute value when grouping with attribute id is enabled"
          },
          "timestamp": {
            "type": "string",
            "description": "datestamp on which the consumption has been registered\r\nDeprecated: use Datestamp instead",
            "format": "date-time",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ConsumptionsAggregatedConsumerDto": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string"
          },
          "attributeId": {
            "type": "string"
          },
          "aggregateType": {
            "enum": [
              "Daily",
              "Monthly",
              "Yearly"
            ],
            "type": "string",
            "format": "int32"
          },
          "consumptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsumptionAggregatedDto"
            }
          },
          "metricInfos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetricInfo"
            }
          },
          "consumerId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ConsumptionsAggregatedDto": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string"
          },
          "attributeId": {
            "type": "string"
          },
          "aggregateType": {
            "enum": [
              "Daily",
              "Monthly",
              "Yearly"
            ],
            "type": "string",
            "format": "int32"
          },
          "consumptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsumptionAggregatedDto"
            }
          },
          "metricInfos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetricInfo"
            }
          }
        },
        "additionalProperties": false
      },
      "ContractBaseParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "required": {
            "type": "boolean",
            "description": "Parameter is mandatory",
            "example": true
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractBooleanParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "required": {
            "type": "boolean",
            "description": "Parameter is mandatory",
            "example": true
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          },
          "defaultValue": {
            "type": "boolean",
            "description": "Default value of parameter",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractCreateDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Description for this contract"
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract.",
            "format": "date",
            "example": "2023-11-28"
          },
          "issuerId": {
            "type": "string",
            "description": "Issuer identifier for this contract",
            "nullable": true
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier for this contract"
          },
          "billingConsumerId": {
            "type": "string",
            "description": "Billing consumer identifier for this contract (optional)",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "description": "Owner (titolare) identifier for this contract (optional)",
            "nullable": true
          },
          "legalRepresentativeId": {
            "type": "string",
            "description": "Legal representative identifier for this contract"
          },
          "recipient": {
            "$ref": "#/components/schemas/ContractRecipientDto"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Metadata key/value pairs for the contract",
            "example": {
              "your-property": "value of property"
            }
          },
          "resellContractId": {
            "type": "string",
            "description": "Reseller contract identifier related to this contract",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "CRM contract number"
          },
          "createOrganization": {
            "type": "boolean",
            "description": "Indicates that upon completion of the contract, the organization related to the BillingConsumer referred to in the contract should be created"
          },
          "type": {
            "enum": [
              "Resell",
              "Direct",
              "Indirect",
              "Distribution"
            ],
            "type": "string",
            "description": "Type of contract (e.g. \"distribution\", \"resell\", \"direct\", indirect)",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ContractDateParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "required": {
            "type": "boolean",
            "description": "Parameter is mandatory",
            "example": true
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          },
          "defaultValue": {
            "type": "string",
            "description": "Default value of parameter",
            "format": "date",
            "nullable": true,
            "example": "2024-07-18"
          },
          "placeholder": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Placeholder of parameter to see in the input field of UI",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractDatetimeParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "required": {
            "type": "boolean",
            "description": "Parameter is mandatory",
            "example": true
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          },
          "defaultValue": {
            "type": "string",
            "description": "Default value of parameter",
            "format": "date-time",
            "nullable": true,
            "example": "2024-07-18T10:11:23.000Z"
          },
          "placeholder": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Placeholder of parameter to see in the input field of UI",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Description for this contract"
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract.",
            "format": "date",
            "example": "2023-11-28"
          },
          "issuerId": {
            "type": "string",
            "description": "Issuer identifier for this contract",
            "nullable": true
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier for this contract"
          },
          "billingConsumerId": {
            "type": "string",
            "description": "Billing consumer identifier for this contract (optional)",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "description": "Owner (titolare) identifier for this contract (optional)",
            "nullable": true
          },
          "legalRepresentativeId": {
            "type": "string",
            "description": "Legal representative identifier for this contract"
          },
          "recipient": {
            "$ref": "#/components/schemas/ContractRecipientDto"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Metadata key/value pairs for the contract",
            "example": {
              "your-property": "value of property"
            }
          },
          "resellContractId": {
            "type": "string",
            "description": "Reseller contract identifier related to this contract",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "CRM contract number"
          },
          "createOrganization": {
            "type": "boolean",
            "description": "Indicates that upon completion of the contract, the organization related to the BillingConsumer referred to in the contract should be created"
          },
          "type": {
            "enum": [
              "Resell",
              "Direct",
              "Indirect",
              "Distribution"
            ],
            "type": "string",
            "description": "Type of contract (e.g. \"distribution\", \"resell\", \"direct\", indirect)",
            "format": "int32"
          },
          "status": {
            "enum": [
              "Draft",
              "Pending",
              "Final",
              "Processing",
              "Completed",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Indicates the contract status",
            "format": "int32"
          },
          "contractItemRuleSnapshots": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractItemRuleSnapshotDto"
            },
            "description": "The list of contract item rule snapshots associated with this contract.\r\nThis represents the state of contract item rules at the time of last modification."
          },
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "businessRelationId": {
            "type": "string",
            "description": "Indicates the businessRelation related to the contract"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityName": {
            "type": "string",
            "description": "Legal entity name for this contract",
            "example": "Namirial S.P.A"
          },
          "billingConsumerName": {
            "type": "string",
            "description": "Billing consumer name for this contract",
            "example": "Billable Consumer 1"
          },
          "ownerName": {
            "type": "string",
            "description": "Owner name for this contract",
            "nullable": true,
            "example": "Owner Consumer 1"
          },
          "legalRepresentativeName": {
            "type": "string",
            "description": "Legal representative name for this contract",
            "nullable": true,
            "example": "Legal Representative Consumer 1"
          },
          "issuerName": {
            "type": "string",
            "description": "Issuer name for this contract",
            "nullable": true,
            "example": "Issuer Consumer 1"
          }
        },
        "additionalProperties": false
      },
      "ContractEndDateDto": {
        "type": "object",
        "properties": {
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract.",
            "format": "date",
            "nullable": true,
            "example": "2023-11-29"
          }
        },
        "additionalProperties": false
      },
      "ContractItemBillingModelParametersDto": {
        "type": "object",
        "properties": {
          "billingModelParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Billing model parameters for this contract item",
            "example": {
              "your-parameter": "value of parameter"
            }
          }
        },
        "additionalProperties": false
      },
      "ContractItemCreateDto": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "description": "Unique identifier of product associated to this contract item"
          },
          "resellContractItemId": {
            "type": "string",
            "description": "Reseller contract item identifier related to this contract item",
            "nullable": true
          },
          "parentId": {
            "type": "string",
            "description": "Parent contract item identifier. When set, onboarding info may be resolved from parent SKU overrides.",
            "nullable": true
          },
          "sku": {
            "type": "string",
            "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This property is DEPRECATED and will be removed on 2026-04-01, use property 'SkuId' instead.<br/>",
            "deprecated": true
          },
          "skuId": {
            "type": "string",
            "description": "Sku identifier code of this contract item"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract item"
          },
          "billingModelId": {
            "type": "string",
            "description": "Billing model identifier for this contract item"
          },
          "billingModelParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Billing model parameters for this contract item",
            "example": {
              "your-parameter": "value of parameter"
            }
          },
          "businessRelationId": {
            "type": "string",
            "description": "Business relation model identifier for this contract item"
          },
          "channel": {
            "type": "string",
            "description": "Sales or acquisition channel associated with this contract item",
            "nullable": true
          },
          "subscriptionId": {
            "type": "string",
            "description": "Subscription identifier for this contract item"
          },
          "skuParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          },
          "featureIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "SKU feature identifiers selected for this contract item."
          },
          "dataSources": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ContractStringListParameterValueDto"
              }
            },
            "description": "Values resolved for external data sources referenced by SKU parameters"
          },
          "signed": {
            "type": "boolean",
            "description": "Indicates whether this contract item is signed or not."
          },
          "provisioned": {
            "type": "boolean",
            "description": "Indicates whether this contract item is provisioned or not."
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract item.",
            "format": "date",
            "example": "2023-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2023-11-29"
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity for this contract item.",
            "format": "int32"
          },
          "envelopeParameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractItemEnvelopeParametersDto"
            },
            "description": "Documents parameters for this contract item."
          },
          "onboardingExtraParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Extra parameters supporting the onboarding process.",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "description": "MyNamirial user identifier of this contract item (optional).",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Contract item Create data transfer object"
      },
      "ContractItemDryRunDto": {
        "type": "object",
        "properties": {
          "boundContractItemIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Identifier of the bounded contract items that must endure the dry-run procedure at the same time as the source contract item."
          }
        },
        "additionalProperties": false
      },
      "ContractItemDto": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "description": "Unique identifier of product associated to this contract item"
          },
          "resellContractItemId": {
            "type": "string",
            "description": "Reseller contract item identifier related to this contract item",
            "nullable": true
          },
          "parentId": {
            "type": "string",
            "description": "Parent contract item identifier. When set, onboarding info may be resolved from parent SKU overrides.",
            "nullable": true
          },
          "sku": {
            "type": "string",
            "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This property is DEPRECATED and will be removed on 2026-04-01, use property 'SkuId' instead.<br/>",
            "deprecated": true
          },
          "skuId": {
            "type": "string",
            "description": "Sku identifier code of this contract item"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract item"
          },
          "billingModelId": {
            "type": "string",
            "description": "Billing model identifier for this contract item"
          },
          "billingModelParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Billing model parameters for this contract item",
            "example": {
              "your-parameter": "value of parameter"
            }
          },
          "businessRelationId": {
            "type": "string",
            "description": "Business relation model identifier for this contract item"
          },
          "channel": {
            "type": "string",
            "description": "Sales or acquisition channel associated with this contract item",
            "nullable": true
          },
          "subscriptionId": {
            "type": "string",
            "description": "Subscription identifier for this contract item"
          },
          "skuParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          },
          "featureIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "SKU feature identifiers selected for this contract item."
          },
          "dataSources": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/ContractStringListParameterValueDto"
              }
            },
            "description": "Values resolved for external data sources referenced by SKU parameters"
          },
          "signed": {
            "type": "boolean",
            "description": "Indicates whether this contract item is signed or not."
          },
          "provisioned": {
            "type": "boolean",
            "description": "Indicates whether this contract item is provisioned or not."
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract item.",
            "format": "date",
            "example": "2023-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2023-11-29"
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity for this contract item.",
            "format": "int32"
          },
          "envelopeParameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractItemEnvelopeParametersDto"
            },
            "description": "Documents parameters for this contract item."
          },
          "onboardingExtraParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Extra parameters supporting the onboarding process.",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "description": "MyNamirial user identifier of this contract item (optional).",
            "nullable": true
          },
          "contractId": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "skuAsyncParametersApplied": {
            "type": "boolean",
            "description": "Flag to indicate if the SKU async parameters have been applied"
          },
          "envelopeParametersApplied": {
            "type": "boolean",
            "description": "Flag to indicate if the envelope parameters have been applied"
          },
          "envelope": {
            "$ref": "#/components/schemas/ContractItemEnvelopeDto"
          },
          "status": {
            "enum": [
              "Ready",
              "Pending",
              "Provisioning",
              "Signing",
              "Active",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Status for this contract item",
            "format": "int32",
            "example": "Active"
          },
          "skuSnapshot": {
            "$ref": "#/components/schemas/SkuBaseDto"
          },
          "billingModelSnapshot": {
            "$ref": "#/components/schemas/BillingModelBaseDto"
          },
          "productCategorySnapshot": {
            "$ref": "#/components/schemas/ProductCategoryDto"
          },
          "provisioningValidationErrors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningValidationErrorDto"
            },
            "description": "The errors that can occur when validating the parameters of a contract item."
          },
          "provisioningError": {
            "$ref": "#/components/schemas/ErrorDto"
          },
          "ownerId": {
            "type": "string",
            "description": "Owner identifier for this contract item",
            "nullable": true
          },
          "legalRepresentativeId": {
            "type": "string",
            "description": "Legal representative identifier for this contract item",
            "nullable": true
          },
          "issuerId": {
            "type": "string",
            "description": "Issuer identifier for this contract item",
            "nullable": true
          },
          "billingConsumerId": {
            "type": "string",
            "description": "Billing consumer identifier for this contract item",
            "nullable": true
          },
          "subscriptionSnapshot": {
            "$ref": "#/components/schemas/LicenseInternalSubscription"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Metadata for the contract item"
          },
          "skuParametersErrors": {
            "type": "object",
            "additionalProperties": {
              "enum": [
                "Unknown",
                "MissingRequiredValue"
              ],
              "type": "string",
              "format": "int32"
            },
            "readOnly": true
          },
          "billingModelParametersErrors": {
            "type": "object",
            "additionalProperties": {
              "enum": [
                "Unknown",
                "MissingRequiredValue"
              ],
              "type": "string",
              "format": "int32"
            },
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract item"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract detail was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract details was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false,
        "description": "Contract item data transfer object"
      },
      "ContractItemEndDateDto": {
        "type": "object",
        "properties": {
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2023-11-29"
          }
        },
        "additionalProperties": false
      },
      "ContractItemEnvelopeDocumentInfoDto": {
        "type": "object",
        "properties": {
          "fileName": {
            "type": "string",
            "description": "File name"
          },
          "documentNumber": {
            "type": "integer",
            "description": "Document number",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ContractItemEnvelopeDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this envelope"
          },
          "status": {
            "enum": [
              "Canceled",
              "Completed",
              "Expired",
              "Rejected",
              "ActionRequired",
              "WaitingForOthers",
              "ExpiringSoon",
              "Active"
            ],
            "type": "string",
            "description": "Envelope status",
            "format": "int32"
          },
          "documentsInfo": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractItemEnvelopeDocumentInfoDto"
            },
            "description": "Documents info for this envelope"
          },
          "auditTrailInfo": {
            "$ref": "#/components/schemas/ContractItemEnvelopeFileInfoDto"
          }
        },
        "additionalProperties": false
      },
      "ContractItemEnvelopeFileInfoDto": {
        "type": "object",
        "properties": {
          "fileName": {
            "type": "string",
            "description": "File name"
          }
        },
        "additionalProperties": false
      },
      "ContractItemEnvelopeParametersDto": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "string",
            "description": "Document identifier"
          },
          "version": {
            "type": "integer",
            "description": "Document version",
            "format": "int32"
          },
          "recipient": {
            "$ref": "#/components/schemas/ContractItemEnvelopeRecipientDto"
          },
          "requestedLanguage": {
            "type": "string",
            "description": "Requested document language.",
            "nullable": true
          },
          "resolvedLanguage": {
            "type": "string",
            "description": "Resolved document language.",
            "nullable": true
          },
          "parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Document parameters"
          }
        },
        "additionalProperties": false
      },
      "ContractItemEnvelopeRecipientDto": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "surname": {
            "type": "string",
            "description": "Surname of the recipient"
          },
          "email": {
            "type": "string",
            "description": "Email of the recipient"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number of the recipient",
            "nullable": true
          },
          "language": {
            "type": "string",
            "description": "Preferred recipient language or locale.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractItemRuleSnapshotDto": {
        "type": "object",
        "properties": {
          "sourceSkuId": {
            "type": "string",
            "description": "Unique identifier of the source SKU for this contract item rule"
          },
          "type": {
            "enum": [
              "Requires",
              "ConflictsWith"
            ],
            "type": "string",
            "description": "The type of this contract item rule",
            "format": "int32"
          },
          "targetSkuIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of target SKU identifiers for this contract item rule"
          },
          "match": {
            "enum": [
              "All",
              "Any"
            ],
            "type": "string",
            "description": "The match mode for this contract item rule, indicating whether all target SKUs must match (All) or if any of them can match (Any).",
            "format": "int32",
            "example": "Active"
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "The list of contract types to which this rule applies. If null or empty, the rule applies to all contract types.",
            "nullable": true
          },
          "ruleId": {
            "type": "string",
            "description": "Unique identifier of this contract item rule"
          }
        },
        "additionalProperties": false,
        "description": "Contract item rule snapshot object"
      },
      "ContractItemSkuParametersDto": {
        "type": "object",
        "properties": {
          "parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          }
        },
        "additionalProperties": false
      },
      "ContractNumberParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "required": {
            "type": "boolean",
            "description": "Parameter is mandatory",
            "example": true
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          },
          "precision": {
            "type": "integer",
            "description": "Decimal places of parameter",
            "format": "int32",
            "nullable": true
          },
          "min": {
            "type": "number",
            "description": "Minimum value of parameter",
            "format": "double",
            "nullable": true
          },
          "max": {
            "type": "number",
            "description": "Maximum value of parameter",
            "format": "double",
            "nullable": true
          },
          "defaultValue": {
            "type": "number",
            "description": "Default value of parameter",
            "format": "double",
            "nullable": true
          },
          "placeholder": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Placeholder of parameter to see in the input field of UI",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractParameterGroupDto": {
        "type": "object",
        "properties": {
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter section label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter section in the list of parameter groups\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractProductMetricParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          },
          "placeholder": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Placeholder of parameter to see in the input field of UI",
            "nullable": true
          },
          "required": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ContractRecipientDto": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "description": "The recipient email"
          }
        },
        "additionalProperties": false
      },
      "ContractStatusUpdateResponseDto": {
        "type": "object",
        "properties": {
          "contractId": {
            "type": "string",
            "description": "Identifier for the contract."
          },
          "provisioningValidationResults": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningValidationResultDto"
            },
            "description": "List of contract items that were updated as part of the operation."
          }
        },
        "additionalProperties": false
      },
      "ContractStatusUpdateSummaryDto": {
        "type": "object",
        "properties": {
          "contractId": {
            "type": "string",
            "description": "The contract identifier"
          },
          "previousStatus": {
            "enum": [
              "Draft",
              "Pending",
              "Final",
              "Processing",
              "Completed",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "The contract status before the update",
            "format": "int32"
          },
          "currentStatus": {
            "enum": [
              "Draft",
              "Pending",
              "Final",
              "Processing",
              "Completed",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "The contract status after the update",
            "format": "int32"
          },
          "provisioningValidationResults": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningValidationResultDto"
            },
            "description": "Provisioning validation errors for the contract items"
          }
        },
        "additionalProperties": false
      },
      "ContractStringListParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "required": {
            "type": "boolean",
            "description": "Parameter is mandatory",
            "example": true
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          },
          "values": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractStringListParameterValueDto"
            },
            "description": "Allowed values of parameter"
          },
          "multiple": {
            "type": "boolean",
            "description": "Multiple values can be selected"
          },
          "defaultValue": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Default value of parameter",
            "nullable": true
          },
          "placeholder": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Placeholder of parameter to see in the input field of UI",
            "nullable": true
          },
          "dataSource": {
            "type": "string",
            "description": "Data source identifier to resolve values dynamically",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ContractStringListParameterValueDto": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Allowed value of parameter"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Label of parameter to see in the UI",
            "nullable": true,
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          }
        },
        "additionalProperties": false
      },
      "ContractStringParameterDto": {
        "type": "object",
        "properties": {
          "type": {
            "enum": [
              "String",
              "StringList",
              "Number",
              "Boolean",
              "Date",
              "Datetime",
              "ProductMetric"
            ],
            "type": "string",
            "description": "Parameter type of parameter",
            "format": "int32",
            "example": "Number"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Dictionary of parameter label localized in different languages",
            "example": {
              "en": "parameter label in english",
              "it": "label del parametro in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "required": {
            "type": "boolean",
            "description": "Parameter is mandatory",
            "example": true
          },
          "async": {
            "type": "boolean",
            "description": "Whether the parameter can be filled later or not\r\nDEFAULT: \"false\"",
            "example": true
          },
          "isConstant": {
            "type": "boolean",
            "description": "Whether the parameter value is constant and cannot be changed\r\nDEFAULT: \"false\"",
            "example": false
          },
          "order": {
            "type": "integer",
            "description": "Order of the parameter in the list of parameters\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this parameter will be applied to",
            "example": [
              "Direct",
              "Resell"
            ]
          },
          "groupId": {
            "type": "string",
            "description": "Parameter section identifier this parameter belongs to",
            "nullable": true
          },
          "defaultValue": {
            "type": "string",
            "description": "Default value of parameter",
            "nullable": true
          },
          "placeholder": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Placeholder of parameter to see in the input field of UI",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CounterAggregatedDto": {
        "type": "object",
        "properties": {
          "metricId": {
            "type": "string",
            "description": "id of the metric on which the counter has been registered"
          },
          "timestamp": {
            "type": "string",
            "description": "datetime (ISO 8601) on which the counter has been registered",
            "format": "date-time"
          },
          "value": {
            "type": "number",
            "description": "value of the counter",
            "format": "double"
          },
          "attributeId": {
            "type": "string",
            "description": "attribute identifier when grouping with attribute id is enabled"
          },
          "attributeValue": {
            "type": "string",
            "description": "attribute value when grouping with attribute id is enabled"
          }
        },
        "additionalProperties": false
      },
      "CounterMetricDto": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "minLength": 1,
            "type": "string",
            "description": "id of the counter metric",
            "example": "your-counter-metric"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dictionary of counter metric's label localized in different languages\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the label in english must be always present\r\ne.g. {\r\n    \"en\": \"counter metric label in english\",\r\n    \"it\": \"label della metrica counter in italiano\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "example": {
              "en": "counter metric label in english",
              "it": "label della metrica counter in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "unit": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Unit of measure of the counter metric\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the label in english must be always present\r\ne.g. {\r\n    \"en\": \"days\",\r\n    \"it\": \"giorni\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "nullable": true,
            "example": {
              "en": "days",
              "it": "giorni",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "iconData": {
            "type": "string",
            "description": "Icon of the counter metric in data:image format",
            "nullable": true,
            "example": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdC="
          },
          "order": {
            "type": "integer",
            "description": "Order of the counter metric in the list of counter metrics\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "unitType": {
            "enum": [
              "Default",
              "DecimalByte",
              "BinaryByte",
              "ScientificQuantity"
            ],
            "type": "string",
            "description": "Type of the unit of measure.\r\nDecimalByte ar 1000-based byte (KB, MB, GB, TB, PB, EB, ZB, YB)\r\nBinaryByte are 1024-based byte (KiB, MiB, GiB, TiB, PiB, EiB, ZiB, YiB)\r\nScientificQuantity are 1000-based (K, M, G, T, P, E, Z, Y)\r\nDEFAULT: \"Default\"",
            "format": "int32",
            "example": "DecimalByte, BinaryByte, ScientificQuantity"
          },
          "scaleSize": {
            "enum": [
              "None",
              "K",
              "M",
              "G",
              "T",
              "P",
              "E",
              "Z",
              "Y"
            ],
            "type": "string",
            "description": "Scale size to be applied to the counter metric value\r\nDEFAULT: None",
            "format": "int32",
            "example": "K, M, G, T, P, E, Z, Y"
          },
          "visible": {
            "type": "boolean",
            "description": "Visibility of the counter metric\r\nDEFAULT: true",
            "example": true
          },
          "attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttributeDto"
            },
            "description": "Attributes to be associated to the counter metric, used for grouping management"
          }
        },
        "additionalProperties": false
      },
      "CountersAggregatedConsumerDto": {
        "type": "object",
        "properties": {
          "consumerId": {
            "type": "string"
          },
          "productId": {
            "type": "string"
          },
          "attributeId": {
            "type": "string"
          },
          "counters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CounterAggregatedDto"
            }
          },
          "metricInfos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetricInfo"
            }
          }
        },
        "additionalProperties": false
      },
      "DocumentCreateDto": {
        "type": "object",
        "properties": {
          "fallbackLanguage": {
            "type": "string",
            "description": "Initial document version fallback language.",
            "example": "it"
          },
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Description for this document.\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the description in english must be always present\r\ne.g. {\r\n    \"en\": \"description of the document in english\",\r\n    \"it\": \"descrizione del documento in italiano\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "example": {
              "en": "description of the document in english",
              "it": "descrizione del documento in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          }
        },
        "additionalProperties": false
      },
      "ErrorDto": {
        "type": "object",
        "properties": {
          "source": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "statusCode": {
            "type": "integer",
            "format": "int32"
          },
          "code": {
            "type": "string"
          },
          "detail": {
            "type": "string"
          },
          "detailObject": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "FailedOperationDto": {
        "type": "object",
        "properties": {
          "resourceType": {
            "enum": [
              "Contracts",
              "ContractItems",
              "BusinessRelations",
              "Subscriptions"
            ],
            "type": "string",
            "format": "int32",
            "nullable": true
          },
          "id": {
            "type": "string"
          },
          "error": {
            "$ref": "#/components/schemas/ErrorDto"
          }
        },
        "additionalProperties": false
      },
      "GuidDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "GUID identifier.",
            "example": "c6de6777-1a90-45f2-869d-007421d682a2"
          }
        },
        "additionalProperties": false
      },
      "HttpClientSettingsDto": {
        "type": "object",
        "properties": {
          "certificate": {
            "$ref": "#/components/schemas/X509Certificate2"
          },
          "jwtBearerTokenProvider": {
            "type": "string",
            "description": "The JWT bearer token provider identifier.",
            "nullable": true
          },
          "jwtBearerTokenUrl": {
            "type": "string",
            "description": "The JWT bearer token endpoint.",
            "nullable": true
          },
          "jwtBearerClientId": {
            "type": "string",
            "description": "The JWT bearer client identifier.",
            "nullable": true
          },
          "jwtBearerClientSecret": {
            "type": "string",
            "description": "The JWT bearer client secret.",
            "nullable": true
          },
          "basicAuthUser": {
            "type": "string",
            "description": "The basic auth user.",
            "nullable": true
          },
          "basicAuthPassword": {
            "type": "string",
            "description": "The basic auth password.",
            "nullable": true
          },
          "apiKey": {
            "type": "string",
            "description": "The api key value.",
            "nullable": true
          },
          "apiKeyHeaderId": {
            "type": "string",
            "description": "The api key header id. (default: \"X-API-Key\")",
            "nullable": true
          },
          "certificateBase64": {
            "type": "string",
            "description": "The ssl certificate base 64 encoded.",
            "nullable": true
          },
          "certificatePassword": {
            "type": "string",
            "description": "The ssl certificate password.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IResult": {
        "type": "object",
        "additionalProperties": false
      },
      "IdDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "IntPtr": {
        "type": "object",
        "additionalProperties": false
      },
      "KeySizes": {
        "type": "object",
        "properties": {
          "minSize": {
            "type": "integer",
            "format": "int32"
          },
          "maxSize": {
            "type": "integer",
            "format": "int32"
          },
          "skipSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "LastConsumptionDto": {
        "type": "object",
        "properties": {
          "metricId": {
            "type": "string",
            "description": "id of the metric on which the consumption has been registered"
          },
          "timestamp": {
            "type": "string",
            "description": "datetime (ISO 8601) on which the consumption has been registered",
            "format": "date-time"
          },
          "datestamp": {
            "type": "string",
            "description": "datetime (ISO 8601) on which the consumption has been registered",
            "format": "date-time"
          },
          "value": {
            "type": "number",
            "description": "value of the consumption",
            "format": "double"
          },
          "businessRelationId": {
            "type": "string",
            "description": "Business relation identifier"
          },
          "attributes": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "attributes to be associated to the consumptions, used for grouping management",
            "example": {
              "your-attribute": "attribute value for this consumption"
            }
          }
        },
        "additionalProperties": false
      },
      "LatestConsumptionsDto": {
        "type": "object",
        "properties": {
          "businessRelationId": {
            "type": "string"
          },
          "consumptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LastConsumptionDto"
            }
          }
        },
        "additionalProperties": false
      },
      "LicenseInternalSubscription": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "status": {
            "enum": [
              "Unknown",
              "Active",
              "InTrial",
              "NonRenewing",
              "Future",
              "Cancelled",
              "Paused",
              "Transferred"
            ],
            "type": "string",
            "format": "int32"
          },
          "currentTermEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextBillingAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "startedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "cancelledAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "currentTermStart": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "activatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "subscriptionUserId": {
            "type": "string"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ListDtoOfConsumerDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsumerDto"
            }
          }
        },
        "additionalProperties": false
      },
      "ListDtoOfConsumerPathWithNameDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsumerPathWithNameDto"
            }
          }
        },
        "additionalProperties": false
      },
      "ListDtoOfProductMetricsDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductMetricsDto"
            }
          }
        },
        "additionalProperties": false
      },
      "ListDtoOfUserBaseDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserBaseDto"
            }
          }
        },
        "additionalProperties": false
      },
      "MetricDto": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "minLength": 1,
            "type": "string",
            "description": "id of the metric",
            "example": "your-metric"
          },
          "label": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dictionary of metric's label localized in different languages\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the label in english must be always present\r\ne.g. {\r\n    \"en\": \"metric label in english\",\r\n    \"it\": \"label della metrica in italiano\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "example": {
              "en": "metric label in english",
              "it": "label della metrica in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "type": {
            "enum": [
              "Total",
              "Incremental",
              "TotalPersistent"
            ],
            "type": "string",
            "description": "metric type\r\nDEFAULT: total",
            "format": "int32",
            "example": "Total"
          },
          "unit": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Unit of measure of the metric\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the label in english must be always present\r\ne.g. {\r\n    \"en\": \"days\",\r\n    \"it\": \"giorni\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "nullable": true,
            "example": {
              "en": "days",
              "it": "giorni",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "iconData": {
            "type": "string",
            "description": "Icon of the metric in data:image format",
            "nullable": true,
            "example": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdC="
          },
          "order": {
            "type": "integer",
            "description": "Order of the metric in the list of metrics\r\nDEFAULT: \"Not applied\"",
            "format": "int32",
            "nullable": true,
            "example": 10
          },
          "unitType": {
            "enum": [
              "Default",
              "DecimalByte",
              "BinaryByte",
              "ScientificQuantity"
            ],
            "type": "string",
            "description": "Type of the unit of measure.\r\nDecimalByte ar 1000-based byte (KB, MB, GB, TB, PB, EB, ZB, YB)\r\nBinaryByte are 1024-based byte (KiB, MiB, GiB, TiB, PiB, EiB, ZiB, YiB)\r\nScientificQuantity are 1000-based (K, M, G, T, P, E, Z, Y)\r\nDEFAULT: \"Default\"",
            "format": "int32",
            "example": "DecimalByte, BinaryByte, ScientificQuantity"
          },
          "scaleSize": {
            "enum": [
              "None",
              "K",
              "M",
              "G",
              "T",
              "P",
              "E",
              "Z",
              "Y"
            ],
            "type": "string",
            "description": "Scale size to be applied to the metric value\r\nDEFAULT: None",
            "format": "int32",
            "example": "K, M, G, T, P, E, Z, Y"
          },
          "aggregationLevel": {
            "enum": [
              "Daily",
              "Monthly",
              "Yearly"
            ],
            "type": "string",
            "description": "Navigation period type of the metric\r\nDEFAULT: Daily",
            "format": "int32"
          },
          "visible": {
            "type": "boolean",
            "description": "Visibility of the metric\r\nDEFAULT: true",
            "example": true
          },
          "isCredit": {
            "type": "boolean",
            "description": "Whether the metric represents credit consumption.\r\nIt can be true only for incremental metrics.",
            "example": true
          },
          "attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttributeDto"
            },
            "description": "Attributes to be associated to the metric, used for grouping management"
          }
        },
        "additionalProperties": false
      },
      "MetricInfo": {
        "type": "object",
        "properties": {
          "metricId": {
            "type": "string"
          },
          "lastUpdate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MultiFailedOperationResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "error": {
            "$ref": "#/components/schemas/ErrorDto"
          }
        },
        "additionalProperties": false
      },
      "MultiOperationResponseDtoOfProvisioningValidationResultDto": {
        "type": "object",
        "properties": {
          "succeededOperations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningValidationResultDto"
            }
          },
          "failedOperations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MultiFailedOperationResponseDto"
            }
          }
        },
        "additionalProperties": false
      },
      "MultiOperationsDto": {
        "type": "object",
        "properties": {
          "succeededOperations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SucceededOperationDto"
            }
          },
          "failedOperations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FailedOperationDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Oid": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "nullable": true
          },
          "friendlyName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "OnboardingInfoDto": {
        "type": "object",
        "properties": {
          "documentIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Documents used during onboarding."
          },
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Description for this onboarding info."
          },
          "formName": {
            "type": "string",
            "description": "The FormName of the form that the front-end will use during onboarding.\r\nIf not provided, no form will be used for onboarding.",
            "nullable": true,
            "example": "OnboardingForm"
          },
          "formProps": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The props of the form that the front-end will use during onboarding."
          },
          "useGenericSkuAsyncParametersEditor": {
            "type": "boolean",
            "description": "Controls whether to use the generic editor for SKU async parameters.\r\nWhen false, the onboarding form is expected to manage them."
          },
          "hideVerifyProfile": {
            "type": "boolean",
            "description": "Controls whether the Verify Profile step is hidden during onboarding. Default: false."
          },
          "signatureMethod": {
            "enum": [
              "ClickToSign",
              "TypeToSign",
              "OneTimePassword"
            ],
            "type": "string",
            "description": "Preferred signature method for documents in this onboarding info (Default: ClickToSign).",
            "format": "int32"
          },
          "authenticationMethod": {
            "enum": [
              "None",
              "SmsOneTimePassword"
            ],
            "type": "string",
            "description": "Preferred authentication method for recipients in this onboarding info (Default: None).",
            "format": "int32"
          },
          "enableBatchSigning": {
            "type": "boolean",
            "description": "If true, all signatures are presented in a batch signing dialog (single click for all). Default: true."
          },
          "autoFinishAfterRequiredTasksDone": {
            "type": "boolean",
            "description": "If true, the signing viewer finalizes automatically after all required signatures are done,\r\nwithout requiring an explicit finish confirmation. Default: true."
          },
          "id": {
            "type": "string",
            "description": "The onboarding info identifier."
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this onboarding info was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this onboarding info was updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "OnboardingStateDto": {
        "type": "object",
        "properties": {
          "currentStepIndex": {
            "type": "integer",
            "description": "Zero-based index of the wizard step the user should resume from.",
            "format": "int32",
            "nullable": true
          },
          "currentSubStepIndex": {
            "type": "integer",
            "description": "Zero-based index of the sub-step within the current wizard step the user should resume from.",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Persisted onboarding wizard state for a service activation group"
      },
      "PaginationDtoOfBusinessRelationDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BusinessRelationDto"
            },
            "description": "ICollection of the final sorted, filtered and paginated data."
          },
          "pageNumber": {
            "type": "integer",
            "description": "The current page number.",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "description": "Number or items in a page.",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "description": "Total number of pages.",
            "format": "int32",
            "readOnly": true
          },
          "totalItems": {
            "type": "integer",
            "description": "Total number of items that exist for the query.",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Stores the filtered, sorted and paginated data for the given entity type."
      },
      "PaginationDtoOfConsumerDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsumerDto"
            },
            "description": "ICollection of the final sorted, filtered and paginated data."
          },
          "pageNumber": {
            "type": "integer",
            "description": "The current page number.",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "description": "Number or items in a page.",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "description": "Total number of pages.",
            "format": "int32",
            "readOnly": true
          },
          "totalItems": {
            "type": "integer",
            "description": "Total number of items that exist for the query.",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Stores the filtered, sorted and paginated data for the given entity type."
      },
      "PaginationDtoOfConsumerDtoV1": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsumerDtoV1"
            },
            "description": "ICollection of the final sorted, filtered and paginated data."
          },
          "pageNumber": {
            "type": "integer",
            "description": "The current page number.",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "description": "Number or items in a page.",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "description": "Total number of pages.",
            "format": "int32",
            "readOnly": true
          },
          "totalItems": {
            "type": "integer",
            "description": "Total number of items that exist for the query.",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Stores the filtered, sorted and paginated data for the given entity type."
      },
      "PaginationDtoOfConsumerPathItemDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ConsumerPathItemDto"
            },
            "description": "ICollection of the final sorted, filtered and paginated data."
          },
          "pageNumber": {
            "type": "integer",
            "description": "The current page number.",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "description": "Number or items in a page.",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "description": "Total number of pages.",
            "format": "int32",
            "readOnly": true
          },
          "totalItems": {
            "type": "integer",
            "description": "Total number of items that exist for the query.",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Stores the filtered, sorted and paginated data for the given entity type."
      },
      "PaginationDtoOfContractDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractDto"
            },
            "description": "ICollection of the final sorted, filtered and paginated data."
          },
          "pageNumber": {
            "type": "integer",
            "description": "The current page number.",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "description": "Number or items in a page.",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "description": "Total number of pages.",
            "format": "int32",
            "readOnly": true
          },
          "totalItems": {
            "type": "integer",
            "description": "Total number of items that exist for the query.",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Stores the filtered, sorted and paginated data for the given entity type."
      },
      "PaginationDtoOfContractItemDto": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractItemDto"
            },
            "description": "ICollection of the final sorted, filtered and paginated data."
          },
          "pageNumber": {
            "type": "integer",
            "description": "The current page number.",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "description": "Number or items in a page.",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "description": "Total number of pages.",
            "format": "int32",
            "readOnly": true
          },
          "totalItems": {
            "type": "integer",
            "description": "Total number of items that exist for the query.",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Stores the filtered, sorted and paginated data for the given entity type."
      },
      "ProductCategoryDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this Product Category"
          },
          "name": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Name of this Product Category\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the name in english must be always present\r\ne.g. {\r\n    \"en\": \"name of the Product Category in english\",\r\n    \"it\": \"nome della Categoria Prodotto in italiano\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "example": {
              "en": "name of the Product Category in english",
              "it": "nome della Categoria Prodotto in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Description of this Product Category\r\n!!! IMPORTANT !!!\r\nENGLISH is the default language, so the description in english must be always present\r\ne.g. {\r\n    \"en\": \"description of the Product Category in english\",\r\n    \"it\": \"descrizione della Categoria Prodotto in italiano\",\r\n    \"de\": \"...\",\r\n    \"fr\": \"...\",\r\n    \"es\": \"...\",\r\n    \"pt\": \"...\",\r\n    \"ro\": \"...\"\r\n}",
            "example": {
              "en": "description of the Product Category in english",
              "it": "descrizione della Categoria Prodotto in italiano",
              "de": "...",
              "fr": "...",
              "es": "...",
              "pt": "...",
              "ro": "..."
            }
          },
          "provisioningInfo": {
            "$ref": "#/components/schemas/ProductCategoryProvisioningInfoDto"
          },
          "restrictMultipleSkus": {
            "type": "boolean",
            "description": "Restrict multiple skus"
          },
          "uniqueProvisioning": {
            "type": "boolean",
            "description": "Unique provisioning for product category"
          }
        },
        "additionalProperties": false
      },
      "ProductCategoryProvisioningInfoDto": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "Provisioning URL for this product category"
          },
          "httpClientSettings": {
            "$ref": "#/components/schemas/HttpClientSettingsDto"
          },
          "payloadVersion": {
            "enum": [
              "V1",
              "V2",
              "V3",
              "V4"
            ],
            "type": "string",
            "description": "Provisioning payload version for this product category",
            "format": "int32",
            "nullable": true
          },
          "dryRunUrl": {
            "type": "string",
            "description": "Dry-run URL for this product category - used for validation before provisioning",
            "nullable": true
          },
          "dryRunOnContractInPending": {
            "type": "boolean",
            "description": "Indicates whether a dry-run must be executed also when the contract moves to Pending status."
          }
        },
        "additionalProperties": false
      },
      "ProductMetricsDto": {
        "required": [
          "productId"
        ],
        "type": "object",
        "properties": {
          "productId": {
            "minLength": 1,
            "type": "string",
            "description": "id of the product on which the given metrics has to be registered",
            "example": "your-product"
          },
          "attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttributeDto"
            },
            "description": "attributes to be associated to the metrics, used for grouping management"
          },
          "metrics": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MetricDto"
            },
            "description": "metrics to be registered"
          },
          "counterMetrics": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CounterMetricDto"
            },
            "description": "counters to be registered"
          },
          "aggregationsIntervalDays": {
            "type": "integer",
            "description": "interval aggregations days",
            "format": "int32"
          },
          "id": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadConsumerBirthInfoDtoV2": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "Date of birth.",
            "format": "date"
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "description": "Gender.",
            "format": "int32"
          },
          "country": {
            "type": "string",
            "description": "Country code of birth."
          },
          "state": {
            "type": "string",
            "description": "State code of birth."
          },
          "city": {
            "type": "string",
            "description": "City of birth."
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code of birth."
          }
        },
        "additionalProperties": false,
        "description": "Birth information payload for Individual consumers in provisioning V2."
      },
      "ProvisioningPayloadConsumerBirthInfoDtoV3": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "Date of birth.",
            "format": "date"
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "description": "Gender.",
            "format": "int32"
          },
          "country": {
            "type": "string",
            "description": "Country code of birth."
          },
          "state": {
            "type": "string",
            "description": "State code of birth."
          },
          "city": {
            "type": "string",
            "description": "City of birth."
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code of birth."
          }
        },
        "additionalProperties": false,
        "description": "Birth information payload for Individual consumers in provisioning V3."
      },
      "ProvisioningPayloadConsumerBirthInfoDtoV4": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "Date of birth.",
            "format": "date"
          },
          "gender": {
            "enum": [
              "Male",
              "Female"
            ],
            "type": "string",
            "description": "Gender.",
            "format": "int32"
          },
          "country": {
            "type": "string",
            "description": "Country code of birth."
          },
          "state": {
            "type": "string",
            "description": "State code of birth."
          },
          "city": {
            "type": "string",
            "description": "City of birth."
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code of birth."
          }
        },
        "additionalProperties": false,
        "description": "Birth information payload for PrivateIndividual and ProfessionalIndividual consumers in provisioning V4."
      },
      "ProvisioningPayloadConsumerResidenceInfoDtoV4": {
        "type": "object",
        "properties": {
          "country": {
            "type": "string",
            "description": "Country of residence. The format is ISO 3166-1 alpha-2 (cca2)."
          },
          "address": {
            "type": "string",
            "description": "Address of residence."
          },
          "state": {
            "type": "string",
            "description": "State of residence."
          },
          "city": {
            "type": "string",
            "description": "City of residence."
          },
          "postalCode": {
            "type": "string",
            "description": "Postal code of the city of residence."
          },
          "personalCode": {
            "type": "string",
            "description": "Personal code of the consumer.\n\r\nOnly for Customer PrivateIndividual and ProfessionalIndividual consumers.\n\r\nFor ITALIAN consumers with Italian residence: length 16 chars, validated with italian specifications.\n\r\nFor FRENCH consumers with French residence: length 15 chars, validated with french NIR specifications.\n\r\nMust be empty for all other consumer types and for residence countries other than IT/FR."
          }
        },
        "additionalProperties": false,
        "description": "Residence information payload for PrivateIndividual and ProfessionalIndividual consumers in provisioning V4."
      },
      "ProvisioningPayloadContentBusinessRelationDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the business relation.",
            "example": "4ec74e45-8262-469c-8182-7c23af8ed44e"
          },
          "resourceType": {
            "enum": [
              "Consumption",
              "Contract"
            ],
            "type": "string",
            "format": "int32"
          },
          "productId": {
            "type": "string",
            "description": "Product identifier.",
            "example": "eSAW"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier.",
            "example": "4eb8a4d7-ec5a-48ba-b3b4-4cbe913e7691"
          },
          "consumerIdsPath": {
            "type": "string",
            "description": "Path of consumer identifiers.",
            "example": "0d7c80ad-fd7f-40ef-9d97-b05dcf6ef911/2a0e7122-f9d3-42cf-b14e-87b5c26c7f69"
          },
          "integratorId": {
            "type": "string",
            "description": "Integrator identifier (An optional property and default is an empty string).",
            "example": "integrator-id"
          },
          "integratorLabel": {
            "type": "string",
            "description": "Integrator label (An optional property used to replace the provided integratorId with a human-readable label).",
            "example": "integrator-label"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentBusinessRelationDtoV2": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the business relation.",
            "example": "4ec74e45-8262-469c-8182-7c23af8ed44e"
          },
          "resourceType": {
            "enum": [
              "Consumption",
              "Contract"
            ],
            "type": "string",
            "format": "int32"
          },
          "productId": {
            "type": "string",
            "description": "Product identifier.",
            "example": "eSAW"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier.",
            "example": "4eb8a4d7-ec5a-48ba-b3b4-4cbe913e7691"
          },
          "consumerIdsPath": {
            "type": "string",
            "description": "Path of consumer identifiers.",
            "example": "0d7c80ad-fd7f-40ef-9d97-b05dcf6ef911/2a0e7122-f9d3-42cf-b14e-87b5c26c7f69"
          },
          "integratorId": {
            "type": "string",
            "description": "Integrator identifier (An optional property and default is an empty string).",
            "example": "integrator-id"
          },
          "integratorLabel": {
            "type": "string",
            "description": "Integrator label (An optional property used to replace the provided integratorId with a human-readable label).",
            "example": "integrator-label"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentBusinessRelationDtoV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the business relation.",
            "example": "4ec74e45-8262-469c-8182-7c23af8ed44e"
          },
          "resourceType": {
            "enum": [
              "Consumption",
              "Contract"
            ],
            "type": "string",
            "format": "int32"
          },
          "productId": {
            "type": "string",
            "description": "Product identifier.",
            "example": "eSAW"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier.",
            "example": "4eb8a4d7-ec5a-48ba-b3b4-4cbe913e7691"
          },
          "consumerIdsPath": {
            "type": "string",
            "description": "Path of consumer identifiers.",
            "example": "0d7c80ad-fd7f-40ef-9d97-b05dcf6ef911/2a0e7122-f9d3-42cf-b14e-87b5c26c7f69"
          },
          "integratorId": {
            "type": "string",
            "description": "Integrator identifier (An optional property and default is an empty string).",
            "example": "integrator-id"
          },
          "integratorLabel": {
            "type": "string",
            "description": "Integrator label (An optional property used to replace the provided integratorId with a human-readable label).",
            "example": "integrator-label"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentBusinessRelationDtoV4": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the business relation.",
            "example": "4ec74e45-8262-469c-8182-7c23af8ed44e"
          },
          "resourceType": {
            "enum": [
              "Consumption",
              "Contract"
            ],
            "type": "string",
            "format": "int32"
          },
          "productId": {
            "type": "string",
            "description": "Product identifier.",
            "example": "eSAW"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier.",
            "example": "4eb8a4d7-ec5a-48ba-b3b4-4cbe913e7691"
          },
          "consumerIdsPath": {
            "type": "string",
            "description": "Path of consumer identifiers.",
            "example": "0d7c80ad-fd7f-40ef-9d97-b05dcf6ef911/2a0e7122-f9d3-42cf-b14e-87b5c26c7f69"
          },
          "integratorId": {
            "type": "string",
            "description": "Integrator identifier (An optional property and default is an empty string).",
            "example": "integrator-id"
          },
          "integratorLabel": {
            "type": "string",
            "description": "Integrator label (An optional property used to replace the provided integratorId with a human-readable label).",
            "example": "integrator-label"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this business relation was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentConsumerDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the consumer.",
            "example": "6dcd885f-a37b-427f-ab59-d008ae134aab"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Associated legal entity identifier",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name of the consumer.",
            "example": "NAMIRIAL S.P.A."
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "customerType": {
            "enum": [
              "None",
              "ProfessionalIndividual",
              "Corporate",
              "PublicAdministration",
              "NonProfit",
              "PrivateIndividual"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n-----------------------------------------------------------\n\r\n| CustomerType........ | Vat...... | TaxNumber | PaNumber |\n\r\n-----------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11 | empty... |\n\r\n| NonProfit........... | empty.... | length 29 | empty... |\n\r\n| Corporate........... | length 11 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 29 | empty... |\n\r\n| Individual.......... | empty.... | length 16 | empty... |\n\r\n| Individual.......... | length 11 | length 16 | empty... |\n\r\n| Individual.......... | length 29 | length 16 | empty... |\n\r\n| PublicAdministration | empty.... | length 11 | length 6 |\n\r\n| PublicAdministration | empty.... | length 29 | length 6 |\n\r\n| PublicAdministration | length 11 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 29 | length 6 |\n\r\n-----------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with Vat.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "vat": {
            "type": "string",
            "description": "Vat of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nREGULAR VAT:\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-Individual, Customer-NonProfit, Customer-Public-Administration\n\r\nMust be empty for: InternalUnit\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nPERSON TAXNUMBER (16 chars). Only for Customer-Individual\n\r\n- Length is 16 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9, A-Z).\n\r\nREGULAR TAXNUMBER (11 chars). Only for LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY TAXNUMBER (29 chars). Only for Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n\r\nMust be empty for: InternalUnit\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "paNumber": {
            "type": "string",
            "description": "PA Number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z) and numbers (0-9). The format is validated with italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-Individual, Customer-NonProfit, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit",
            "example": "UFCGFV"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer."
          },
          "crmId": {
            "type": "string",
            "description": "CRM consumer identifier."
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentConsumerDtoV2": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the consumer.",
            "example": "6dcd885f-a37b-427f-ab59-d008ae134aab"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Associated legal entity identifier",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name of the consumer.",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "Name of the consumer for individual customers.\n",
            "example": "Mario"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the consumer for individual customers.\n",
            "example": "Rossi"
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "customerType": {
            "enum": [
              "None",
              "Individual",
              "Corporate",
              "PublicAdministration",
              "NonProfit"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n-----------------------------------------------------------\n\r\n| CustomerType........ | Vat...... | TaxNumber | PaNumber |\n\r\n-----------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11 | empty... |\n\r\n| NonProfit........... | empty.... | length 29 | empty... |\n\r\n| Corporate........... | length 11 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 29 | empty... |\n\r\n| Individual.......... | empty.... | length 16 | empty... |\n\r\n| Individual.......... | length 11 | length 16 | empty... |\n\r\n| Individual.......... | length 29 | length 16 | empty... |\n\r\n| PublicAdministration | empty.... | length 11 | length 6 |\n\r\n| PublicAdministration | empty.... | length 29 | length 6 |\n\r\n| PublicAdministration | length 11 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 29 | length 6 |\n\r\n-----------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with Vat.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "vat": {
            "type": "string",
            "description": "Vat of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nREGULAR VAT:\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-Individual, Customer-NonProfit, Customer-Public-Administration\n\r\nMust be empty for: InternalUnit\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nPERSON TAXNUMBER (16 chars). Only for Customer-Individual\n\r\n- Length is 16 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9, A-Z).\n\r\nREGULAR TAXNUMBER (11 chars). Only for LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY TAXNUMBER (29 chars). Only for Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n\r\nMust be empty for: InternalUnit\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "paNumber": {
            "type": "string",
            "description": "PA Number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z) and numbers (0-9). The format is validated with italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-Individual, Customer-NonProfit, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit",
            "example": "UFCGFV"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer."
          },
          "crmId": {
            "type": "string",
            "description": "CRM consumer identifier."
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ProvisioningPayloadConsumerBirthInfoDtoV2"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentConsumerDtoV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the consumer.",
            "example": "6dcd885f-a37b-427f-ab59-d008ae134aab"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Associated legal entity identifier",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name of the consumer.",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "Name of the consumer for individual customers.\n",
            "example": "Mario"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the consumer for individual customers.\n",
            "example": "Rossi"
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).\n\r\nIn the creation of a consumer by integrators is forbidden the creation of a consumer with LegalEntity type.\n\n\r\nDEFAULT: Customer\n",
            "format": "int32",
            "example": "Customer"
          },
          "customerType": {
            "enum": [
              "None",
              "Individual",
              "Corporate",
              "PublicAdministration",
              "NonProfit"
            ],
            "type": "string",
            "description": "Customer type.\n\n\r\nFor ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate, PublicAdministration, NonProfit\n\r\nWhen the Type is Customer and CustomerType is None the CustomerType is automatically generated according to the following rules:\n\r\n-----------------------------------------------------------\n\r\n| CustomerType........ | Vat...... | TaxNumber | PaNumber |\n\r\n-----------------------------------------------------------\n\r\n| NonProfit........... | empty.... | length 11 | empty... |\n\r\n| NonProfit........... | empty.... | length 29 | empty... |\n\r\n| Corporate........... | length 11 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 11 | empty... |\n\r\n| Corporate........... | length 29 | length 29 | empty... |\n\r\n| Individual.......... | empty.... | length 16 | empty... |\n\r\n| Individual.......... | length 11 | length 16 | empty... |\n\r\n| Individual.......... | length 29 | length 16 | empty... |\n\r\n| PublicAdministration | empty.... | length 11 | length 6 |\n\r\n| PublicAdministration | empty.... | length 29 | length 6 |\n\r\n| PublicAdministration | length 11 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 11 | length 6 |\n\r\n| PublicAdministration | length 29 | length 29 | length 6 |\n\r\n-----------------------------------------------------------\n\r\nWithout a type, it is not possible to define a NonProfit with Vat.\n\r\nIt is still recommended when you have the type in hand to manually define the CustomerType with the correct type.\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid values are: None, Individual, Corporate\n\n\r\nDEFAULT: None",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "vat": {
            "type": "string",
            "description": "Vat of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nREGULAR VAT:\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY VAT:\n\r\n- The temporary VAT is used only for customers that do not have a regular VAT yet.\n\r\n- The temporary VAT is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\nIs mandatory for: LegalEntity, Customer-Corporate\n\r\nIs optional for: Customer-Individual, Customer-NonProfit, Customer-Public-Administration\n\r\nMust be empty for: InternalUnit\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "taxNumber": {
            "type": "string",
            "description": "Tax number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nPERSON TAXNUMBER (16 chars). Only for Customer-Individual\n\r\n- Length is 16 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9, A-Z).\n\r\nREGULAR TAXNUMBER (11 chars). Only for LegalEntity, Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration\n\r\n- Length is 11 chars. The format is validated with italian specifications.\n\r\n- Valid characters are numbers (0-9). \n\r\nTEMPORARY TAXNUMBER (29 chars). Only for Customer-Corporate, Customer-NonProfit, Customer-PublicAdministration:\n\r\n- The temporary TAXNUMBER is used only for customers that do not have a regular TAXNUMBER yet.\n\r\n- The temporary TAXNUMBER is composed by a header \"T01\" and a ULID.\n\r\n- Length is 29 chars: 3 header chars and 26 ULID chars.\n\r\n- Valid characters are 0-9, A-H, J-K, M-N, P-T, V-Z. The format is validated with ULID specifications.\n\r\n\r\nMust be empty for: InternalUnit\n\n\r\nFor NO ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z), numbers (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: Legal-Entity, Customer-Corporate, Customer-Individual\n\r\nMust be empty for: InternalUnit"
          },
          "paNumber": {
            "type": "string",
            "description": "PA Number of the consumer.\n\n\r\nFor ITALIAN consumers:\n\r\nValid characters are uppercase letters (A-Z) and numbers (0-9). The format is validated with italian specifications.\n\r\nIs mandatory for: Customer-PublicAdministration\n\r\nMust be empty for: LegalEntity, Customer-Corporate, Customer-Individual, Customer-NonProfit, InternalUnit\n\n\r\nFor all other consumers:\n\r\nValid characters are uppercase letters (A-Z), digits (0-9), symbols dot (.), hyphen (-) and slash (/).\n\r\nIs optional for: LegalEntity, Customer-Corporate, Customer-PrivateIndividual, Customer-ProfessionalIndividual\n\r\nMust be empty for: InternalUnit",
            "example": "UFCGFV"
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.\n\r\nFor InternalUnit type must be false.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.\n\r\nIs mandatory when Billable is true.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state list.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city list.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.\n\r\nIs mandatory when Billable is true.\n\r\nFor ITALIAN consumers is validated with the italian state city postal code list.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.\n\r\nOne email is mandatory when Billable is true.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.\n",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.\n",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.\n",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer."
          },
          "crmId": {
            "type": "string",
            "description": "CRM consumer identifier."
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ProvisioningPayloadConsumerBirthInfoDtoV3"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentConsumerDtoV4": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the consumer.",
            "example": "6dcd885f-a37b-427f-ab59-d008ae134aab"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this consumer was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "legalEntityId": {
            "type": "string",
            "description": "Associated legal entity identifier",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name of the consumer.",
            "example": "NAMIRIAL S.P.A."
          },
          "firstName": {
            "type": "string",
            "description": "Name of the consumer for individual customers.",
            "example": "Mario"
          },
          "lastName": {
            "type": "string",
            "description": "Last name of the consumer for individual customers.",
            "example": "Rossi"
          },
          "type": {
            "enum": [
              "Customer",
              "LegalEntity",
              "InternalUnit"
            ],
            "type": "string",
            "description": "Consumer type (Customer, LegalEntity, InternalUnit).",
            "format": "int32",
            "example": "Customer"
          },
          "customerType": {
            "enum": [
              "None",
              "ProfessionalIndividual",
              "Corporate",
              "PublicAdministration",
              "NonProfit",
              "PrivateIndividual"
            ],
            "type": "string",
            "description": "Customer type.",
            "format": "int32",
            "example": "Corporate"
          },
          "country": {
            "type": "string",
            "description": "Country of the consumer. The format is ISO 3166-1 alpha-2 (cca2).",
            "example": "IT"
          },
          "taxCode1": {
            "type": "string",
            "description": "Tax code 1 of the consumer."
          },
          "taxCode2": {
            "type": "string",
            "description": "Tax code 2 of the consumer."
          },
          "taxCode3": {
            "type": "string",
            "description": "Tax code 3 of the consumer."
          },
          "billable": {
            "type": "boolean",
            "description": "Billable consumer.",
            "example": true
          },
          "address": {
            "type": "string",
            "description": "Billing address of the consumer.",
            "example": "Via Caduti sul Lavoro, 4"
          },
          "state": {
            "type": "string",
            "description": "Billing state of the consumer.",
            "example": "AN"
          },
          "city": {
            "type": "string",
            "description": "Billing city of the consumer.",
            "example": "Senigallia"
          },
          "postalCode": {
            "type": "string",
            "description": "Billing postal code of the consumer.",
            "example": "60019"
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact emails of the consumer.",
            "example": [
              "info@namirial.com"
            ]
          },
          "pecs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact pecs of the consumer.",
            "example": [
              "amm.namirial@sicurezzapostale.it"
            ]
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact phones of the consumer.",
            "example": [
              "+3907163494"
            ]
          },
          "mobilePhones": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Contact mobile phones of the consumer.",
            "example": [
              "+393384234567"
            ]
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Custom meta data dictionary of the consumer."
          },
          "crmId": {
            "type": "string",
            "description": "CRM consumer identifier."
          },
          "businessType": {
            "enum": [
              "None",
              "Reseller"
            ],
            "type": "string",
            "description": "Consumer business type.",
            "format": "int32"
          },
          "birthInfo": {
            "$ref": "#/components/schemas/ProvisioningPayloadConsumerBirthInfoDtoV4"
          },
          "residenceInfo": {
            "$ref": "#/components/schemas/ProvisioningPayloadConsumerResidenceInfoDtoV4"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "businessRelationId": {
            "type": "string",
            "description": "The business relation identifier related to the contract"
          },
          "status": {
            "enum": [
              "Draft",
              "Pending",
              "Final",
              "Processing",
              "Completed",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Indicates the contract status",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract"
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract.",
            "format": "date",
            "example": "2023-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract.",
            "format": "date",
            "nullable": true,
            "example": "2023-11-29"
          },
          "issuerId": {
            "type": "string",
            "description": "Issuer identifier for this contract",
            "nullable": true
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier for this contract"
          },
          "billingConsumerId": {
            "type": "string",
            "description": "Billing consumer identifier for this contract"
          },
          "resellContractId": {
            "type": "string",
            "description": "Reseller contract identifier related to this contract",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "CRM contract number"
          },
          "type": {
            "enum": [
              "Resell",
              "Direct",
              "Indirect",
              "Distribution"
            ],
            "type": "string",
            "description": "Type of contract (e.g. \"distribution\", \"resell\", \"direct\", indirect)",
            "format": "int32"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV1"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractDtoV2": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "businessRelationId": {
            "type": "string",
            "description": "The business relation identifier related to the contract"
          },
          "status": {
            "enum": [
              "Draft",
              "Pending",
              "Final",
              "Processing",
              "Completed",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Indicates the contract status",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract"
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract.",
            "format": "date",
            "example": "2023-11-28"
          },
          "issuerId": {
            "type": "string",
            "description": "Issuer identifier for this contract",
            "nullable": true
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier for this contract"
          },
          "billingConsumerId": {
            "type": "string",
            "description": "Billing consumer identifier for this contract",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "description": "Owner (titolare) identifier for this contract (optional)",
            "nullable": true
          },
          "legalRepresentativeId": {
            "type": "string",
            "description": "Legal representative identifier for this contract (optional)",
            "nullable": true
          },
          "resellContractId": {
            "type": "string",
            "description": "Reseller contract identifier related to this contract",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "CRM contract number"
          },
          "type": {
            "enum": [
              "Resell",
              "Direct",
              "Indirect",
              "Distribution"
            ],
            "type": "string",
            "description": "Type of contract (e.g. \"distribution\", \"resell\", \"direct\", indirect)",
            "format": "int32"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV2"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractDtoV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "businessRelationId": {
            "type": "string",
            "description": "The business relation identifier related to the contract"
          },
          "status": {
            "enum": [
              "Draft",
              "Pending",
              "Final",
              "Processing",
              "Completed",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Indicates the contract status",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract"
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract.",
            "format": "date",
            "example": "2023-11-28"
          },
          "issuerId": {
            "type": "string",
            "description": "Issuer identifier for this contract",
            "nullable": true
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier for this contract"
          },
          "billingConsumerId": {
            "type": "string",
            "description": "Billing consumer identifier for this contract",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "description": "Owner (titolare) identifier for this contract (optional)",
            "nullable": true
          },
          "legalRepresentativeId": {
            "type": "string",
            "description": "Legal representative identifier for this contract (optional)",
            "nullable": true
          },
          "resellContractId": {
            "type": "string",
            "description": "Reseller contract identifier related to this contract",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "CRM contract number"
          },
          "type": {
            "enum": [
              "Resell",
              "Direct",
              "Indirect",
              "Distribution"
            ],
            "type": "string",
            "description": "Type of contract (e.g. \"distribution\", \"resell\", \"direct\", indirect)",
            "format": "int32"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV3"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractDtoV4": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "businessRelationId": {
            "type": "string",
            "description": "The business relation identifier related to the contract"
          },
          "status": {
            "enum": [
              "Draft",
              "Pending",
              "Final",
              "Processing",
              "Completed",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Indicates the contract status",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract"
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract.",
            "format": "date",
            "example": "2023-11-28"
          },
          "issuerId": {
            "type": "string",
            "description": "Issuer identifier for this contract",
            "nullable": true
          },
          "legalEntityId": {
            "type": "string",
            "description": "Legal entity identifier for this contract"
          },
          "billingConsumerId": {
            "type": "string",
            "description": "Billing consumer identifier for this contract",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "description": "Owner (titolare) identifier for this contract (optional)",
            "nullable": true
          },
          "legalRepresentativeId": {
            "type": "string",
            "description": "Legal representative identifier for this contract (optional)",
            "nullable": true
          },
          "resellContractId": {
            "type": "string",
            "description": "Reseller contract identifier related to this contract",
            "nullable": true
          },
          "number": {
            "type": "string",
            "description": "CRM contract number"
          },
          "type": {
            "enum": [
              "Resell",
              "Direct",
              "Indirect",
              "Distribution"
            ],
            "type": "string",
            "description": "Type of contract (e.g. \"distribution\", \"resell\", \"direct\", indirect)",
            "format": "int32"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV4"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractItemDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract item"
          },
          "contractId": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract item"
          },
          "resellContractItemId": {
            "type": "string",
            "description": "Reseller contract item identifier related to this contract item",
            "nullable": true
          },
          "sku": {
            "type": "string",
            "description": "Sku code of this contract item"
          },
          "billingModelId": {
            "type": "string",
            "description": "Billing model identifier for this contract item"
          },
          "billingModelParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Billing model parameters for this contract item"
          },
          "businessRelationId": {
            "type": "string",
            "description": "Business relation model identifier for this contract item"
          },
          "skuParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          },
          "onboardingExtraParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Extra parameters supporting the onboarding process.",
            "nullable": true
          },
          "status": {
            "enum": [
              "Ready",
              "Pending",
              "Provisioning",
              "Signing",
              "Active",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Status for this contract item",
            "format": "int32"
          },
          "paymentStatus": {
            "type": "string",
            "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This property is DEPRECATED and will be removed on 2026-04-01.<br/>",
            "deprecated": true
          },
          "signed": {
            "type": "boolean",
            "description": "Indicates whether this contract item is signed or not."
          },
          "provisioned": {
            "type": "boolean",
            "description": "Indicates whether this contract item is provisioned or not."
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract item.",
            "format": "date",
            "example": "2024-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2024-11-29"
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity for this contract item.",
            "format": "int32"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract detail was created.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract details was last updated.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractItemDtoV2": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract item"
          },
          "contractId": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract item"
          },
          "resellContractItemId": {
            "type": "string",
            "description": "Reseller contract item identifier related to this contract item",
            "nullable": true
          },
          "sku": {
            "type": "string",
            "description": "Sku code of this contract item"
          },
          "subscriptionId": {
            "type": "string",
            "description": "Subscription identifier related to this contract item",
            "nullable": true
          },
          "billingModelId": {
            "type": "string",
            "description": "Billing model identifier for this contract item",
            "nullable": true
          },
          "billingModelParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Billing model parameters for this contract item"
          },
          "businessRelationId": {
            "type": "string",
            "description": "Business relation model identifier for this contract item",
            "nullable": true
          },
          "skuParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          },
          "onboardingExtraParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Extra parameters supporting the onboarding process.",
            "nullable": true
          },
          "status": {
            "enum": [
              "Ready",
              "Pending",
              "Provisioning",
              "Signing",
              "Active",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Status for this contract item",
            "format": "int32"
          },
          "paymentStatus": {
            "type": "string",
            "description": "<b>🗑️ DEPRECATED (Will no longer be available in the next release) 🗑️</b>: This property is DEPRECATED and will be removed on 2026-04-01.<br/>",
            "deprecated": true
          },
          "signed": {
            "type": "boolean",
            "description": "Indicates whether this contract item is signed or not."
          },
          "provisioned": {
            "type": "boolean",
            "description": "Indicates whether this contract item is provisioned or not."
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract item.",
            "format": "date",
            "example": "2024-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2024-11-29"
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity for this contract item.",
            "format": "int32"
          },
          "envelopeParameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeParametersDtoV2"
            },
            "description": "Documents parameters for this contract item."
          },
          "envelope": {
            "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeDtoV2"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract detail was created.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract details was last updated.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractItemDtoV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract item"
          },
          "contractId": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract item"
          },
          "resellContractItemId": {
            "type": "string",
            "description": "Reseller contract item identifier related to this contract item",
            "nullable": true
          },
          "parentId": {
            "type": "string",
            "description": "Parent contract item identifier related to this contract item",
            "nullable": true
          },
          "sku": {
            "type": "string",
            "description": "Sku code of this contract item"
          },
          "subscriptionId": {
            "type": "string",
            "description": "Subscription identifier related to this contract item",
            "nullable": true
          },
          "billingModelId": {
            "type": "string",
            "description": "Billing model identifier for this contract item",
            "nullable": true
          },
          "billingModelParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Billing model parameters for this contract item"
          },
          "businessRelationId": {
            "type": "string",
            "description": "Business relation model identifier for this contract item",
            "nullable": true
          },
          "skuParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          },
          "onboardingExtraParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Extra parameters supporting the onboarding process.",
            "nullable": true
          },
          "featureIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "SKU feature identifiers selected for this contract item."
          },
          "status": {
            "enum": [
              "Ready",
              "Pending",
              "Provisioning",
              "Signing",
              "Active",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Status for this contract item",
            "format": "int32"
          },
          "signed": {
            "type": "boolean",
            "description": "Indicates whether this contract item is signed or not."
          },
          "provisioned": {
            "type": "boolean",
            "description": "Indicates whether this contract item is provisioned or not."
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract item.",
            "format": "date",
            "example": "2024-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2024-11-29"
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity for this contract item.",
            "format": "int32"
          },
          "envelopeParameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeParametersDtoV3"
            },
            "description": "Documents parameters for this contract item."
          },
          "envelope": {
            "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeDtoV3"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract detail was created.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract details was last updated.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentContractItemDtoV4": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract item"
          },
          "contractId": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "description": {
            "type": "string",
            "description": "Description for this contract item"
          },
          "resellContractItemId": {
            "type": "string",
            "description": "Reseller contract item identifier related to this contract item",
            "nullable": true
          },
          "parentId": {
            "type": "string",
            "description": "Parent contract item identifier related to this contract item",
            "nullable": true
          },
          "sku": {
            "type": "string",
            "description": "Sku code of this contract item"
          },
          "subscriptionId": {
            "type": "string",
            "description": "Subscription identifier related to this contract item",
            "nullable": true
          },
          "billingModelId": {
            "type": "string",
            "description": "Billing model identifier for this contract item",
            "nullable": true
          },
          "billingModelParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Billing model parameters for this contract item"
          },
          "businessRelationId": {
            "type": "string",
            "description": "Business relation model identifier for this contract item",
            "nullable": true
          },
          "skuParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          },
          "onboardingExtraParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Extra parameters supporting the onboarding process.",
            "nullable": true
          },
          "status": {
            "enum": [
              "Ready",
              "Pending",
              "Provisioning",
              "Signing",
              "Active",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Status for this contract item",
            "format": "int32"
          },
          "signed": {
            "type": "boolean",
            "description": "Indicates whether this contract item is signed or not."
          },
          "provisioned": {
            "type": "boolean",
            "description": "Indicates whether this contract item is provisioned or not."
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract item.",
            "format": "date",
            "example": "2024-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2024-11-29"
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity for this contract item.",
            "format": "int32"
          },
          "envelopeParameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeParametersDtoV4"
            },
            "description": "Documents parameters for this contract item."
          },
          "envelope": {
            "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeDtoV4"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this contract detail was created.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this contract details was last updated.",
            "format": "date-time",
            "example": "2024-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentDtoV1": {
        "type": "object",
        "properties": {
          "contract": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractDtoV1"
          },
          "contractItem": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractItemDtoV1"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV1"
          },
          "consumers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentConsumerDtoV1"
            },
            "description": "Consumers involved in the provisioning"
          },
          "users": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentUserDtoV1"
            },
            "description": "Users involved in the provisioning"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentDtoV2": {
        "type": "object",
        "properties": {
          "contract": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractDtoV2"
          },
          "contractItem": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractItemDtoV2"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV2"
          },
          "consumers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentConsumerDtoV2"
            },
            "description": "Consumers involved in the provisioning"
          },
          "users": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentUserDtoV2"
            },
            "description": "Users involved in the provisioning"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentDtoV3": {
        "type": "object",
        "properties": {
          "contract": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractDtoV3"
          },
          "contractItem": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractItemDtoV3"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV3"
          },
          "relatedContractItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentContractItemDtoV3"
            },
            "description": "Contract items related to the provisioning context (with lower onboarding priority)."
          },
          "consumers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentConsumerDtoV3"
            },
            "description": "Consumers involved in the provisioning"
          },
          "users": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentUserDtoV3"
            },
            "description": "Users involved in the provisioning"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentDtoV4": {
        "type": "object",
        "properties": {
          "contract": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractDtoV4"
          },
          "contractItem": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentContractItemDtoV4"
          },
          "businessRelation": {
            "$ref": "#/components/schemas/ProvisioningPayloadContentBusinessRelationDtoV4"
          },
          "relatedContractItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentContractItemDtoV4"
            },
            "description": "Contract items related to the provisioning context (with lower onboarding priority)."
          },
          "consumers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentConsumerDtoV4"
            },
            "description": "Consumers involved in the provisioning"
          },
          "users": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningPayloadContentUserDtoV4"
            },
            "description": "Users involved in the provisioning"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentUserDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the user"
          },
          "email": {
            "type": "string",
            "description": "Email of the user"
          },
          "consumerId": {
            "type": "string",
            "description": "Consumer identifiers of the user",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentUserDtoV2": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the user"
          },
          "email": {
            "type": "string",
            "description": "Email of the user"
          },
          "consumerIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Consumer identifiers of the user",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentUserDtoV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the user"
          },
          "email": {
            "type": "string",
            "description": "Email of the user"
          },
          "consumerIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Consumer identifiers of the user",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContentUserDtoV4": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the user"
          },
          "email": {
            "type": "string",
            "description": "Email of the user"
          },
          "consumerIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Consumer identifiers of the user",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeDtoV2": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this envelope"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeDtoV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this envelope"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeDtoV4": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this envelope"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeParametersDtoV2": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "string",
            "description": "Document identifier"
          },
          "version": {
            "type": "integer",
            "description": "Document version",
            "format": "int32"
          },
          "recipient": {
            "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeRecipientDtoV2"
          },
          "parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Document parameters"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeParametersDtoV3": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "string",
            "description": "Document identifier"
          },
          "version": {
            "type": "integer",
            "description": "Document version",
            "format": "int32"
          },
          "recipient": {
            "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeRecipientDtoV3"
          },
          "parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Document parameters"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeParametersDtoV4": {
        "type": "object",
        "properties": {
          "documentId": {
            "type": "string",
            "description": "Document identifier"
          },
          "version": {
            "type": "integer",
            "description": "Document version",
            "format": "int32"
          },
          "recipient": {
            "$ref": "#/components/schemas/ProvisioningPayloadContractItemEnvelopeRecipientDtoV4"
          },
          "parameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Document parameters"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeRecipientDtoV2": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "surname": {
            "type": "string",
            "description": "Surname of the recipient"
          },
          "email": {
            "type": "string",
            "description": "Email of the recipient"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number of the recipient",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeRecipientDtoV3": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "surname": {
            "type": "string",
            "description": "Surname of the recipient"
          },
          "email": {
            "type": "string",
            "description": "Email of the recipient"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number of the recipient",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadContractItemEnvelopeRecipientDtoV4": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name of the recipient"
          },
          "surname": {
            "type": "string",
            "description": "Surname of the recipient"
          },
          "email": {
            "type": "string",
            "description": "Email of the recipient"
          },
          "phoneNumber": {
            "type": "string",
            "description": "Phone number of the recipient",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProvisioningPayloadDtoOfT": {
        "type": "object",
        "properties": {
          "version": {
            "enum": [
              "V1",
              "V2",
              "V3",
              "V4"
            ],
            "type": "string",
            "description": "Payload version",
            "format": "int32"
          },
          "type": {
            "enum": [
              "Provisioning"
            ],
            "type": "string",
            "description": "Payload type",
            "format": "int32"
          },
          "content": {
            "$ref": "#/components/schemas/T"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningValidationErrorDto": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "The JSONPath to the field that has the error"
          },
          "errorCode": {
            "type": "string",
            "description": "The error code"
          },
          "message": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The human-readable error message"
          }
        },
        "additionalProperties": false
      },
      "ProvisioningValidationResultDto": {
        "type": "object",
        "properties": {
          "contractItemId": {
            "type": "string",
            "description": "The ID of the contract item that was validated"
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProvisioningValidationErrorDto"
            },
            "description": "List of validation errors, if any"
          }
        },
        "additionalProperties": false
      },
      "PublicKey": {
        "type": "object",
        "properties": {
          "encodedKeyValue": {
            "$ref": "#/components/schemas/AsnEncodedData"
          },
          "encodedParameters": {
            "$ref": "#/components/schemas/AsnEncodedData"
          },
          "key": {
            "$ref": "#/components/schemas/AsymmetricAlgorithm"
          },
          "oid": {
            "$ref": "#/components/schemas/Oid"
          }
        },
        "additionalProperties": false
      },
      "ReadOnlyMemoryOfByte": {
        "type": "object",
        "properties": {
          "length": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "isEmpty": {
            "type": "boolean",
            "readOnly": true
          },
          "span": {
            "$ref": "#/components/schemas/ReadOnlySpanOfByte"
          }
        },
        "additionalProperties": false
      },
      "ReadOnlySpanOfByte": {
        "type": "object",
        "properties": {
          "length": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "isEmpty": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ResourceEventContractItemDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract item"
          },
          "contractId": {
            "type": "string",
            "description": "Unique identifier of this contract"
          },
          "skuId": {
            "type": "string",
            "description": "Sku identifier code of this contract item"
          },
          "skuSnapshot": {
            "$ref": "#/components/schemas/SkuBaseDto"
          },
          "skuParameters": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Sku parameters for this contract item"
          },
          "featureIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "SKU feature identifiers selected for this contract item."
          },
          "ownerId": {
            "type": "string",
            "description": "Owner identifier for this contract item",
            "nullable": true
          },
          "userId": {
            "type": "string",
            "description": "MyNamirial user identifier of this contract item",
            "nullable": true
          },
          "channel": {
            "type": "string",
            "description": "Sales or acquisition channel associated with this contract item",
            "nullable": true
          },
          "status": {
            "enum": [
              "Ready",
              "Pending",
              "Provisioning",
              "Signing",
              "Active",
              "Expired",
              "Cancelled",
              "Support"
            ],
            "type": "string",
            "description": "Status for this contract item",
            "format": "int32",
            "example": "Active"
          },
          "startDate": {
            "type": "string",
            "description": "Date and time indicating starting date for this contract item.",
            "format": "date",
            "example": "2023-11-28"
          },
          "endDate": {
            "type": "string",
            "description": "Date and time indicating ending date for this contract item.",
            "format": "date",
            "nullable": true,
            "example": "2023-11-29"
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity for this contract item.",
            "format": "int32"
          },
          "subscriptionId": {
            "type": "string",
            "description": "Subscription identifier for this contract item.",
            "nullable": true
          },
          "subscriptionSnapshot": {
            "$ref": "#/components/schemas/ResourceEventSubscriptionDtoV1"
          }
        },
        "additionalProperties": false
      },
      "ResourceEventContractItemProvisioningDataDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this contract item provisioning data document."
          },
          "data": {
            "type": "object",
            "additionalProperties": {
              "oneOf": [
                {
                  "type": "string"
                },
                {
                  "type": "number",
                  "format": "double"
                },
                {
                  "type": "integer",
                  "format": "int64"
                },
                {
                  "type": "boolean"
                },
                {
                  "type": "object",
                  "additionalProperties": {}
                },
                {
                  "type": "array",
                  "items": {}
                }
              ],
              "nullable": true
            },
            "description": "Generic provisioning data payload.",
            "example": {
              "customKey": "customValue",
              "customNestedKey": {
                "customKey2": "customValue",
                "customKey3": true
              }
            }
          },
          "contractItemSnapshot": {
            "$ref": "#/components/schemas/ResourceEventContractItemDtoV1"
          },
          "createdAt": {
            "type": "string",
            "description": "Creation date and time.",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "description": "Last update date and time.",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "ResourceEventDataDtoV1": {
        "type": "object",
        "properties": {
          "contractItem": {
            "$ref": "#/components/schemas/ResourceEventContractItemDtoV1"
          },
          "contractItemBeforeOperation": {
            "$ref": "#/components/schemas/ResourceEventContractItemDtoV1"
          },
          "contractItemProvisioningData": {
            "$ref": "#/components/schemas/ResourceEventContractItemProvisioningDataDtoV1"
          },
          "contractItemProvisioningDataBeforeOperation": {
            "$ref": "#/components/schemas/ResourceEventContractItemProvisioningDataDtoV1"
          }
        },
        "additionalProperties": false
      },
      "ResourceEventSubscriptionDtoV1": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Subscription identifier"
          },
          "subscriptionUserId": {
            "type": "string",
            "description": "Subscription customer identifier"
          },
          "status": {
            "enum": [
              "Unknown",
              "Active",
              "InTrial",
              "NonRenewing",
              "Future",
              "Cancelled",
              "Paused",
              "Transferred"
            ],
            "type": "string",
            "description": "Subscription status",
            "format": "int32"
          },
          "startDate": {
            "type": "string",
            "description": "Subscription start date",
            "format": "date-time",
            "nullable": true
          },
          "currentTermStart": {
            "type": "string",
            "description": "Current term start date",
            "format": "date-time",
            "nullable": true
          },
          "currentTermEnd": {
            "type": "string",
            "description": "Current term end date",
            "format": "date-time",
            "nullable": true
          },
          "nextBillingAt": {
            "type": "string",
            "description": "Next billing date",
            "format": "date-time",
            "nullable": true
          },
          "cancelledAt": {
            "type": "string",
            "description": "Cancellation date",
            "format": "date-time",
            "nullable": true
          },
          "activatedAt": {
            "type": "string",
            "description": "Activation date",
            "format": "date-time",
            "nullable": true
          },
          "deleted": {
            "type": "boolean",
            "description": "Whether the subscription is deleted"
          }
        },
        "additionalProperties": false
      },
      "ServiceActivationGroupBaseDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The name for this service activation group",
            "nullable": true
          },
          "afterSignRedirectUri": {
            "type": "string",
            "description": "The URI to which OP should redirect user after service activation group has been signed (default: no redirect)",
            "nullable": true
          },
          "contractIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Identifier of the contracts in this service activation group"
          }
        },
        "additionalProperties": false
      },
      "ServiceActivationGroupConfirmResponseDto": {
        "type": "object",
        "properties": {
          "groupId": {
            "type": "string",
            "description": "The Service Activation Group identifier"
          },
          "status": {
            "enum": [
              "Draft",
              "Onboarding",
              "Signing",
              "Provisioning",
              "Completed",
              "Support"
            ],
            "type": "string",
            "description": "The current status of the Service Activation Group",
            "format": "int32"
          },
          "processedContracts": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContractStatusUpdateSummaryDto"
            },
            "description": "Summary of all processed contracts in the group"
          }
        },
        "additionalProperties": false
      },
      "ServiceActivationGroupContractsDto": {
        "type": "object",
        "properties": {
          "contractIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "ServiceActivationGroupDto": {
        "type": "object",
        "properties": {
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The name for this service activation group",
            "nullable": true
          },
          "afterSignRedirectUri": {
            "type": "string",
            "description": "The URI to which OP should redirect user after service activation group has been signed (default: no redirect)",
            "nullable": true
          },
          "contractIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Identifier of the contracts in this service activation group"
          },
          "id": {
            "type": "string",
            "description": "Unique identifier of this service activation group."
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this service activation group was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this service activation group was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "onboardingState": {
            "$ref": "#/components/schemas/OnboardingStateDto"
          }
        },
        "additionalProperties": false
      },
      "SkuBaseDto": {
        "type": "object",
        "properties": {
          "productCategoryId": {
            "type": "string",
            "description": "ProductCategory identifier related to this sku"
          },
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Description for this sku"
          },
          "parameterGroups": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/ContractParameterGroupDto"
            },
            "description": "Definition of SKU parameter groups"
          },
          "parameters": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/ContractBaseParameterDto"
            },
            "description": "Definition of SKU parameters"
          },
          "features": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkuFeatureDto"
            },
            "description": "Selectable feature definitions for this SKU."
          },
          "featureRules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SkuFeatureRuleDto"
            },
            "description": "Dependency and incompatibility rules for this SKU features."
          },
          "toBeProvisioned": {
            "type": "boolean",
            "description": "Flag to decide if this sku needs provisioning"
          },
          "autoCreateBusinessRelation": {
            "type": "boolean",
            "description": "Flag to decide if this sku needs to automatically create a business relation at SAG confirmation"
          },
          "hideInOnboarding": {
            "type": "boolean",
            "description": "Flag to decide if this sku should be hidden during onboarding."
          },
          "onboardingPriority": {
            "type": "integer",
            "description": "Priority used to sort contract items during onboarding. Lower values are shown first.",
            "format": "int32"
          },
          "onboardingInfo": {
            "type": "object",
            "properties": {
              "Resell": {
                "type": "string"
              },
              "Direct": {
                "type": "string"
              },
              "Indirect": {
                "type": "string"
              },
              "Distribution": {
                "type": "string"
              }
            },
            "additionalProperties": false,
            "description": "Identifier of the onboarding info associated to this sku by contract type",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SkuFeatureDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of this SKU feature."
          },
          "description": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Localized description for this SKU feature.",
            "nullable": true
          },
          "contractTypes": {
            "type": "array",
            "items": {
              "enum": [
                "Resell",
                "Direct",
                "Indirect",
                "Distribution"
              ],
              "type": "string",
              "format": "int32"
            },
            "description": "Contract types this feature can be selected for. Empty means all contract types.",
            "nullable": true
          },
          "order": {
            "type": "integer",
            "description": "Optional value used to sort features. Lower values are shown first.",
            "format": "int32",
            "nullable": true
          },
          "defaultSelected": {
            "type": "boolean",
            "description": "Whether this feature should be selected by default when creating a contract item."
          }
        },
        "additionalProperties": false
      },
      "SkuFeatureRuleDto": {
        "type": "object",
        "properties": {
          "featureId": {
            "type": "string",
            "description": "Feature identifier governed by this rule. ConflictsWith disallows coexistence between FeatureId and targets;\r\nwhen an existing selection must be sanitized, FeatureId is removed and targets are kept."
          },
          "type": {
            "enum": [
              "Requires",
              "ConflictsWith"
            ],
            "type": "string",
            "description": "Feature rule type.",
            "format": "int32"
          },
          "match": {
            "enum": [
              "All",
              "Any"
            ],
            "type": "string",
            "description": "Defines how target feature identifiers are matched.",
            "format": "int32"
          },
          "targetFeatureIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Target feature identifiers required by this feature or incompatible with this feature, depending on the rule\r\ntype."
          }
        },
        "additionalProperties": false
      },
      "SubscriptionIdDto": {
        "type": "object",
        "properties": {
          "subscriptionId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "SucceededOperationDto": {
        "type": "object",
        "properties": {
          "resourceType": {
            "enum": [
              "Contracts",
              "ContractItems",
              "BusinessRelations",
              "Subscriptions"
            ],
            "type": "string",
            "format": "int32",
            "nullable": true
          },
          "id": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "T": {
        "type": "object",
        "additionalProperties": false
      },
      "UserBaseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Identifier of the user"
          },
          "email": {
            "type": "string",
            "description": "Email of the user"
          },
          "consumerIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Consumer identifiers of the user",
            "nullable": true
          },
          "subscriptionUserId": {
            "type": "string",
            "description": "Subscription identifier of the user"
          },
          "createdAt": {
            "type": "string",
            "description": "Date and time indicating when this user was created.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          },
          "updatedAt": {
            "type": "string",
            "description": "Date and time indicating when this user was last updated.",
            "format": "date-time",
            "example": "2023-11-28T08:14:32.585Z"
          }
        },
        "additionalProperties": false
      },
      "UserIdDto": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "X500DistinguishedName": {
        "type": "object",
        "properties": {
          "oid": {
            "$ref": "#/components/schemas/Oid"
          },
          "rawData": {
            "type": "string",
            "format": "byte"
          },
          "name": {
            "type": "string",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "X509Certificate2": {
        "type": "object",
        "properties": {
          "handle": {
            "$ref": "#/components/schemas/IntPtr"
          },
          "issuer": {
            "type": "string",
            "readOnly": true
          },
          "subject": {
            "type": "string",
            "readOnly": true
          },
          "serialNumberBytes": {
            "$ref": "#/components/schemas/ReadOnlyMemoryOfByte"
          },
          "archived": {
            "type": "boolean"
          },
          "extensions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/X509Extension"
            },
            "readOnly": true
          },
          "friendlyName": {
            "type": "string"
          },
          "hasPrivateKey": {
            "type": "boolean",
            "readOnly": true
          },
          "privateKey": {
            "$ref": "#/components/schemas/AsymmetricAlgorithm"
          },
          "issuerName": {
            "$ref": "#/components/schemas/X500DistinguishedName"
          },
          "notAfter": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "notBefore": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "publicKey": {
            "$ref": "#/components/schemas/PublicKey"
          },
          "rawData": {
            "type": "string",
            "format": "byte",
            "readOnly": true
          },
          "rawDataMemory": {
            "$ref": "#/components/schemas/ReadOnlyMemoryOfByte"
          },
          "serialNumber": {
            "type": "string",
            "readOnly": true
          },
          "signatureAlgorithm": {
            "$ref": "#/components/schemas/Oid"
          },
          "subjectName": {
            "$ref": "#/components/schemas/X500DistinguishedName"
          },
          "thumbprint": {
            "type": "string",
            "readOnly": true
          },
          "version": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "X509Extension": {
        "type": "object",
        "properties": {
          "oid": {
            "$ref": "#/components/schemas/Oid"
          },
          "rawData": {
            "type": "string",
            "format": "byte"
          },
          "critical": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "OpenIdConnect": {
        "type": "oauth2",
        "flows": {
          "clientCredentials": {
            "tokenUrl": "https://auth-preprod.namirial.app/realms/namirial/protocol/openid-connect/token",
            "refreshUrl": "https://auth-preprod.namirial.app/realms/namirial/protocol/openid-connect/token",
            "scopes": {}
          },
          "authorizationCode": {
            "authorizationUrl": "https://auth-preprod.namirial.app/realms/namirial/protocol/openid-connect/auth",
            "tokenUrl": "https://auth-preprod.namirial.app/realms/namirial/protocol/openid-connect/token",
            "refreshUrl": "https://auth-preprod.namirial.app/realms/namirial/protocol/openid-connect/token",
            "scopes": {}
          }
        }
      },
      "BasicAuthentication": {
        "type": "http",
        "scheme": "Basic"
      }
    }
  },
  "tags": [
    {
      "name": "Consumptions",
      "description": "Show consumptions of your product in One Platform"
    }
  ]
}