{
  "openapi": "3.0.4",
  "info": {
    "title": "DataService API",
    "description": "Represents a data integration and modeling service.",
    "version": "v2.0"
  },
  "servers": [
    {
      "url": "https://demo.avaplace.com/api/asol/ds"
    }
  ],
  "paths": {
    "/api/v2/DataModels": {
      "get": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a filtered collection of data-model definitions.",
        "parameters": [
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelDefinitionV2CollectionResult"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "head": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a filtered collection of data-model definitions.",
        "parameters": [
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelDefinitionV2CollectionResult"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/DataModels/{id}": {
      "get": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a data-model definition.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The data-model identifier",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelDefinitionV2"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "head": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a data-model definition.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The data-model identifier",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelDefinitionV2"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/DataModels/ByCode/{code}": {
      "get": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a data-model definition.",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "description": "The data-model code",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelDefinitionV2"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "head": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a data-model definition.",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "description": "The data-model code",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelDefinitionV2"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/DataModels/CustomProperties": {
      "get": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get custom properties.",
        "parameters": [
          {
            "name": "ModelId",
            "in": "query",
            "description": "Filter by the unique identifier of the data model custom properties belong to.",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ModelCode",
            "in": "query",
            "description": "Filter by the code of the data model custom properties belong to.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModelName",
            "in": "query",
            "description": "Filter by the name of the data model custom properties belong to.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModelWideSearch",
            "in": "query",
            "description": "Filter by a wide search term for the data model custom properties belong to. (e.g., searches across Model's Name and Code fields)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Name",
            "in": "query",
            "description": "Filter by the name of the custom property.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Code",
            "in": "query",
            "description": "Filter by the code of the custom property.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "WideSearch",
            "in": "query",
            "description": "Filter by a wide search term for the custom property. (e.g., searches across Name and Code fields)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OrganizationId",
            "in": "query",
            "description": "Filter by the organization identifier the custom property is associated with.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OrganizationCode",
            "in": "query",
            "description": "Filter by the organization code the custom property is associated with.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelCustomPropertyDefinitionCollectionResult"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/DataModels/CustomProperties/{id}": {
      "get": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a custom property by identifier.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The custom property identifier",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelCustomPropertyDefinition"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "delete": {
        "tags": [
          "DataModels"
        ],
        "summary": "Delete a custom property.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The custom property identifier",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "put": {
        "tags": [
          "DataModels"
        ],
        "summary": "Update a custom property.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The custom property identifier",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "allowBreakingChanges",
            "in": "query",
            "description": "Allow breaking changes (FieldType, IsCollection, IsNullable)",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "description": "The custom property update request",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DataModelCustomPropertyUpdateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelCustomPropertyDefinition"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/DataModels/CustomProperties/ByCode/{code}": {
      "get": {
        "tags": [
          "DataModels"
        ],
        "summary": "Get a custom property by code (name).",
        "parameters": [
          {
            "name": "code",
            "in": "path",
            "description": "The custom property code",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataModelCustomPropertyDefinition"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/DataModels/{modelId}/CustomProperties": {
      "post": {
        "tags": [
          "DataModels"
        ],
        "summary": "Create a custom property.",
        "parameters": [
          {
            "name": "modelId",
            "in": "path",
            "description": "",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DataModelCustomPropertyCreateRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created"
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationAgents/Settings": {
      "get": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Gets the metadata settings of the integration agent (cloud-based multi-tenant service).\nNote: The registration is shared across all tenants.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationAgentSettingsWithStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "patch": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Creates/Patches the metadata settings of the integration agent (cloud-based multi-tenant service).\nNote: The registration is shared across all tenants. The registration is provided here.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The settings definition for patching",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationAgentPatchModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationAgentSettingsWithStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationAgents/Transformations": {
      "get": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Gets the metadata settings of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationAgentTransformationSettings"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "patch": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Patches the metadata settings of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The transformations definition for patching",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationAgentPatchTransformationModel"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationAgents/SupportedFeatures": {
      "get": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Gets the metadata settings of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationAgentFeatureUsageSettings"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "patch": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Patches the metadata settings of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The supported features definition for patching",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationAgentPatchFeatureUsageModel"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationAgents/ConfigureConsumer": {
      "patch": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Configure MessageGateway consumer based on metadata settings of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The consumer settings for patching",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SourceConsumerSettings"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationAgents/Statuses": {
      "get": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Gets the status history of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "OperationId",
            "in": "query",
            "description": "The operation identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "StatusItemId",
            "in": "query",
            "description": "The status-item identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataAgentStatusModelCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "post": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Sets the status of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The status definition",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationAgentSetStatusModel"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationAgents/OnPremiseSettings": {
      "get": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Gets the metadata settings of the integration agent (on-premise single-tenant service installed on customer's site).\nNote: The registration is available for current tenant only.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationAgentSettingsWithStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      },
      "patch": {
        "tags": [
          "IntegrationAgents"
        ],
        "summary": "Patch the metadata settings of the integration agent (on-premise single-tenant service installed on customer's site).\nNote: The registration is available for current tenant only. The registration is provided by Connector Catalogue app.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The settings definition for patching",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationAgentPatchModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationAgentSettingsWithStatus"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationMaps": {
      "get": {
        "tags": [
          "IntegrationMaps"
        ],
        "summary": "Get a filtered collection of integration-maps.",
        "parameters": [
          {
            "name": "ActivationKey",
            "in": "query",
            "description": "The activation key filter (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AreaCode",
            "in": "query",
            "description": "The definition area code filter (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ApplicationCode",
            "in": "query",
            "description": "The application code filter (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ScenarioCode",
            "in": "query",
            "description": "The scenario code filter (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Released",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Unreleased",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Deleted",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Undeleted",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationMapModelCollectionResult"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationMaps/{itemId}": {
      "get": {
        "tags": [
          "IntegrationMaps"
        ],
        "summary": "Get an integration-map.",
        "parameters": [
          {
            "name": "itemId",
            "in": "path",
            "description": "The identifier of integration-map item",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Released",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Unreleased",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Deleted",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Undeleted",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationMapModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationMaps/{itemId}/Applications": {
      "get": {
        "tags": [
          "IntegrationMaps"
        ],
        "summary": "Get an integration-map.",
        "parameters": [
          {
            "name": "itemId",
            "in": "path",
            "description": "The identifier of integration-map item",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationMaps/Import/ByArea": {
      "post": {
        "tags": [
          "IntegrationMaps"
        ],
        "summary": "Import integration-map definition by area. Definition will be created or updated (when allowUpdate is turned on).\nWarning: Use with caution!",
        "parameters": [
          {
            "name": "release",
            "in": "query",
            "description": "The flag to release imported definition (optional)",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "description": "The integrated-application definition",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IntegrationMapByAreaDefinition"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "boolean"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationMaps/Export/ByArea/{areaCode}": {
      "get": {
        "tags": [
          "IntegrationMaps"
        ],
        "summary": "Export integration-map definition by area.",
        "parameters": [
          {
            "name": "areaCode",
            "in": "path",
            "description": "The definition area identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationMapByAreaDefinition"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationProfiles": {
      "get": {
        "tags": [
          "IntegrationProfiles"
        ],
        "summary": "Get a filtered collection of integration-profiles.",
        "parameters": [
          {
            "name": "IsSelected",
            "in": "query",
            "description": "The selected integration-profile filter (optional).",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Released",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Unreleased",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Deleted",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "Undeleted",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationProfileModelCollectionResult"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationProfiles/{profileId}": {
      "get": {
        "tags": [
          "IntegrationProfiles"
        ],
        "summary": "Get an integration-profile.",
        "parameters": [
          {
            "name": "profileId",
            "in": "path",
            "description": "The identifier of integration-profile",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sourceId",
            "in": "query",
            "description": "The data-source identifier filter (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationProfileModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationProfiles/{profileId}/AvailableFeatures": {
      "get": {
        "tags": [
          "IntegrationProfiles"
        ],
        "summary": "Get the flattened list of available features for application.",
        "parameters": [
          {
            "name": "profileId",
            "in": "path",
            "description": "The identifier of integration-profile",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sourceId",
            "in": "query",
            "description": "The data-source identifier (mandatory)",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationProfileAppFeatureUsageCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationProfiles/{profileId}/AvailableModels": {
      "get": {
        "tags": [
          "IntegrationProfiles"
        ],
        "summary": "Get the flattened list of available data-models for application.",
        "parameters": [
          {
            "name": "profileId",
            "in": "path",
            "description": "The identifier of integration-profile",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "sourceId",
            "in": "query",
            "description": "The data-source identifier (mandatory)",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationProfileAppModelUsageCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationProfiles/Current": {
      "get": {
        "tags": [
          "IntegrationProfiles"
        ],
        "summary": "Get the current integration-profile.",
        "parameters": [
          {
            "name": "sourceId",
            "in": "query",
            "description": "The data-source identifier filter (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationProfileModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationProfiles/Current/AvailableFeatures": {
      "get": {
        "tags": [
          "IntegrationProfiles"
        ],
        "summary": "Get the flattened list of available features for application.",
        "parameters": [
          {
            "name": "sourceId",
            "in": "query",
            "description": "The data-source identifier (mandatory)",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationProfileAppFeatureUsageCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/IntegrationProfiles/Current/AvailableModels": {
      "get": {
        "tags": [
          "IntegrationProfiles"
        ],
        "summary": "Get the flattened list of available data-models for application.",
        "parameters": [
          {
            "name": "sourceId",
            "in": "query",
            "description": "The data-source identifier (mandatory)",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IntegrationProfileAppModelUsageCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/ProcessedDataResults": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Get a collection of data-processing results.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ScenarioId",
            "in": "query",
            "description": "The integration-scenario identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FeatureId",
            "in": "query",
            "description": "The integration-feature identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ProfileId",
            "in": "query",
            "description": "The integration-profile identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher data-source identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "OperationId",
            "in": "query",
            "description": "The operating-log identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "CreatedFrom",
            "in": "query",
            "description": "The CreatedOn greater than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "CreatedTo",
            "in": "query",
            "description": "The CreatedOn less than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataProcessingResultModelCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/ProcessedDataResults/{resultId}": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Get a summary of data-processing result.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "resultId",
            "in": "path",
            "description": "The data-processing result identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "UseCurrentProfile",
            "in": "query",
            "description": "The flag to specify if current integration-profile will be used for filtering instead of the original one.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher data-source identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataProcessingResultModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/ProcessedDataResults/{resultId}/Items": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Get a collection of result items using data-processing result id.\nNote: The data-processing result id = the identifier of published queue-item.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "resultId",
            "in": "path",
            "description": "The data-processing result identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "UseCurrentProfile",
            "in": "query",
            "description": "The flag to specify if current integration-profile will be used for filtering instead of the original one.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher data-source identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DataProcessingResultItemModelCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/GetData": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Get a filtered collection of data from data-model using model id.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operationId",
            "in": "query",
            "description": "The Id of the operation in operating log (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "ScenarioId",
            "in": "query",
            "description": "The integration-scenario identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FeatureId",
            "in": "query",
            "description": "The integration-feature identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher source identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IncludeDeleted",
            "in": "query",
            "description": "Flag to include deleted records. (default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "MandantCode",
            "in": "query",
            "description": "The mandant code (optional).\nNote: if AllMandants flag is true, this is not allowed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AllMandants",
            "in": "query",
            "description": "Flag to include all mandants (default: false).\nNote: if true, MandantCode is not allowed.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "RecordId",
            "in": "query",
            "description": "The internal record identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "The external identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ReferenceId",
            "in": "query",
            "description": "The reference identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ModelId",
            "in": "query",
            "description": "The model identifier",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModifiedFrom",
            "in": "query",
            "description": "The ModifiedOn greater than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ModifiedTo",
            "in": "query",
            "description": "The ModifiedOn less than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "IncludeLookupProperties",
            "in": "query",
            "description": "The comma-separated list of navigation properties representing records included to query result.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "options",
            "in": "query",
            "description": "The format options",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JObjectCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/GetData/ReferencedByFK": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Get a filtered collection of data referenced by foreign key from data-model using model id.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operationId",
            "in": "query",
            "description": "The Id of the operation in operating log (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "FkName",
            "in": "query",
            "description": "The name of lookup property (i.e. FK name)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FkId",
            "in": "query",
            "description": "The value in lookup property (i.e. FK value)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ScenarioId",
            "in": "query",
            "description": "The integration-scenario identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FeatureId",
            "in": "query",
            "description": "The integration-feature identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher source identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IncludeDeleted",
            "in": "query",
            "description": "Flag to include deleted records. (default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "MandantCode",
            "in": "query",
            "description": "The mandant code (optional).\nNote: if AllMandants flag is true, this is not allowed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AllMandants",
            "in": "query",
            "description": "Flag to include all mandants (default: false).\nNote: if true, MandantCode is not allowed.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "RecordId",
            "in": "query",
            "description": "The internal record identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "The external identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ReferenceId",
            "in": "query",
            "description": "The reference identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ModelId",
            "in": "query",
            "description": "The model identifier",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModifiedFrom",
            "in": "query",
            "description": "The ModifiedOn greater than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ModifiedTo",
            "in": "query",
            "description": "The ModifiedOn less than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "IncludeLookupProperties",
            "in": "query",
            "description": "The comma-separated list of navigation properties representing records included to query result.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "options",
            "in": "query",
            "description": "The format options",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JObjectCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/GetData/FilteredByAK": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Get a filtered collection of data filtered by alternate key from data-model using model name.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operationId",
            "in": "query",
            "description": "The Id of the operation in operating log (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "AkName",
            "in": "query",
            "description": "The name of scalar property (i.e. AK name)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AkValue",
            "in": "query",
            "description": "The value in scalar property (i.e. AK value)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ScenarioId",
            "in": "query",
            "description": "The integration-scenario identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FeatureId",
            "in": "query",
            "description": "The integration-feature identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher source identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IncludeDeleted",
            "in": "query",
            "description": "Flag to include deleted records. (default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "MandantCode",
            "in": "query",
            "description": "The mandant code (optional).\nNote: if AllMandants flag is true, this is not allowed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AllMandants",
            "in": "query",
            "description": "Flag to include all mandants (default: false).\nNote: if true, MandantCode is not allowed.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "RecordId",
            "in": "query",
            "description": "The internal record identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "The external identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ReferenceId",
            "in": "query",
            "description": "The reference identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ModelId",
            "in": "query",
            "description": "The model identifier",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModifiedFrom",
            "in": "query",
            "description": "The ModifiedOn greater than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ModifiedTo",
            "in": "query",
            "description": "The ModifiedOn less than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "IncludeLookupProperties",
            "in": "query",
            "description": "The comma-separated list of navigation properties representing records included to query result.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "options",
            "in": "query",
            "description": "The format options",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/GetData/{resultId}/ModelResults": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Retrieves a dictionary (with modelId as key and collection as value) of data based on the specified result ID and additional filters.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "resultId",
            "in": "path",
            "description": "The data-processing-result identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operationId",
            "in": "query",
            "description": "The Id of the operation in operating log (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "ScenarioId",
            "in": "query",
            "description": "The integration-scenario identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FeatureId",
            "in": "query",
            "description": "The integration-feature identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher source identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IncludeDeleted",
            "in": "query",
            "description": "Flag to include deleted records. (default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "MandantCode",
            "in": "query",
            "description": "The mandant code (optional).\nNote: if AllMandants flag is true, this is not allowed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AllMandants",
            "in": "query",
            "description": "Flag to include all mandants (default: false).\nNote: if true, MandantCode is not allowed.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "RecordId",
            "in": "query",
            "description": "The internal record identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "The external identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ReferenceId",
            "in": "query",
            "description": "The reference identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ModelId",
            "in": "query",
            "description": "The model identifier",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModifiedFrom",
            "in": "query",
            "description": "The ModifiedOn greater than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ModifiedTo",
            "in": "query",
            "description": "The ModifiedOn less than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "IncludeLookupProperties",
            "in": "query",
            "description": "The comma-separated list of navigation properties representing records included to query result.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "options",
            "in": "query",
            "description": "The format options",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/GetData/{resultId}": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "summary": "Retrieves a collection of data based on the specified result ID and additional filters.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "resultId",
            "in": "path",
            "description": "The data-processing-result identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operationId",
            "in": "query",
            "description": "The Id of the operation in operating log (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "ScenarioId",
            "in": "query",
            "description": "The integration-scenario identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FeatureId",
            "in": "query",
            "description": "The integration-feature identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher source identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IncludeDeleted",
            "in": "query",
            "description": "Flag to include deleted records. (default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "MandantCode",
            "in": "query",
            "description": "The mandant code (optional).\nNote: if AllMandants flag is true, this is not allowed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AllMandants",
            "in": "query",
            "description": "Flag to include all mandants (default: false).\nNote: if true, MandantCode is not allowed.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "RecordId",
            "in": "query",
            "description": "The internal record identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "The external identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ReferenceId",
            "in": "query",
            "description": "The reference identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ModelId",
            "in": "query",
            "description": "The model identifier",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModifiedFrom",
            "in": "query",
            "description": "The ModifiedOn greater than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ModifiedTo",
            "in": "query",
            "description": "The ModifiedOn less than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "IncludeLookupProperties",
            "in": "query",
            "description": "The comma-separated list of navigation properties representing records included to query result.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "options",
            "in": "query",
            "description": "The format options",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/QueryingData/GetData/{resultId}/{itemId}": {
      "get": {
        "tags": [
          "QueryingData"
        ],
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "resultId",
            "in": "path",
            "description": "The data-processing-result identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "itemId",
            "in": "path",
            "description": "The data-processing-result-item identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operationId",
            "in": "query",
            "description": "The Id of the operation in operating log (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "ScenarioId",
            "in": "query",
            "description": "The integration-scenario identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FeatureId",
            "in": "query",
            "description": "The integration-feature identifier (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SelfSourceOnly",
            "in": "query",
            "description": "The flag to apply self-source filter, the bypass used for testing purposes (optional).\nNote: used for integration profiles",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "PublisherSourceId",
            "in": "query",
            "description": "The publisher source identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IncludeDeleted",
            "in": "query",
            "description": "Flag to include deleted records. (default: false)",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "MandantCode",
            "in": "query",
            "description": "The mandant code (optional).\nNote: if AllMandants flag is true, this is not allowed.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "AllMandants",
            "in": "query",
            "description": "Flag to include all mandants (default: false).\nNote: if true, MandantCode is not allowed.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "RecordId",
            "in": "query",
            "description": "The internal record identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ExternalId",
            "in": "query",
            "description": "The external identifier (optional).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ReferenceId",
            "in": "query",
            "description": "The reference identifier (optional).",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ModelId",
            "in": "query",
            "description": "The model identifier",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ModifiedFrom",
            "in": "query",
            "description": "The ModifiedOn greater than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ModifiedTo",
            "in": "query",
            "description": "The ModifiedOn less than UTC datetime (optional).",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "IncludeLookupProperties",
            "in": "query",
            "description": "The comma-separated list of navigation properties representing records included to query result.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "options",
            "in": "query",
            "description": "The format options",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/SourcingData/EnqueueData": {
      "get": {
        "tags": [
          "SourcingData"
        ],
        "summary": "Gets the input-queue items of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnqueueDataStatusSummaryCollectionResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/SourcingData/EnqueueData/start": {
      "post": {
        "tags": [
          "SourcingData"
        ],
        "summary": "Starts a new enqueue operation or adds data to a created queue-item of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "operationId",
            "in": "query",
            "description": "The operation identifier (optional)",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The collection of edge data records to enqueue.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EdgeDataRecordEdgeDataCollection"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnqueueDataStatusModel"
                }
              }
            }
          },
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnqueueDataStatusModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/SourcingData/EnqueueData/append/{queueItemId}": {
      "post": {
        "tags": [
          "SourcingData"
        ],
        "summary": "Continue an existing enqueue operation and appends data to an existing queue-item of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "queueItemId",
            "in": "path",
            "description": "The queue-item identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The collection of edge data records to append.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EdgeDataRecordEdgeDataCollection"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnqueueDataStatusModel"
                }
              }
            }
          },
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnqueueDataStatusModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/SourcingData/EnqueueData/status/{queueItemId}": {
      "get": {
        "tags": [
          "SourcingData"
        ],
        "summary": "Gets the input-queue item of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "queueItemId",
            "in": "path",
            "description": "The queue-item identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EnqueueDataStatusModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    },
    "/api/v2/SourcingData/EnqueueData/cancel/{queueItemId}": {
      "delete": {
        "tags": [
          "SourcingData"
        ],
        "summary": "Cancels the waiting input-queue item of the integration agent.",
        "parameters": [
          {
            "name": "SourceId",
            "in": "query",
            "description": "The identifier of the data-source (optional)",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "clientId",
            "in": "query",
            "description": "The client Id (optional)",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "queueItemId",
            "in": "path",
            "description": "The queue-item identifier",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "oauth2": [
              "apiim"
            ]
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "DataAgentStatusModel": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "agentId": {
            "type": "string",
            "format": "uuid"
          },
          "sourceId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "operationId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "version": {
            "type": "string",
            "description": "Gets the version of data-agent.",
            "nullable": true
          },
          "isLive": {
            "type": "boolean",
            "description": "DataAgent is healthy and communicating with ASOL Platform."
          },
          "isReady": {
            "type": "boolean",
            "description": "DataAgent is healthy and ready to communicate with data-source.\nNote: Available only when 'CheckConnection' is requested.",
            "nullable": true
          },
          "verboseStatus": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The verbose status of data-source in data-agent.",
            "nullable": true
          },
          "utcTimestamp": {
            "type": "string",
            "description": "The status timestamp from data-agent.",
            "format": "date-time"
          },
          "createdOn": {
            "type": "string",
            "description": "Created on (UTC)",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Represents a data-agent status contract."
      },
      "DataAgentStatusModelCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataAgentStatusModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DataModelCustomPropertyCreateRequest": {
        "required": [
          "code",
          "fieldType",
          "isCollection",
          "isLocalized",
          "name"
        ],
        "type": "object",
        "properties": {
          "organization": {
            "type": "string",
            "description": "Identifier or code of the organization the custom property belongs to.",
            "nullable": true
          },
          "code": {
            "minLength": 1,
            "type": "string",
            "description": "Code of the custom property (unique within the model)."
          },
          "name": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "description": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "isCollection": {
            "type": "boolean",
            "description": "Indicates if the property is a collection (list) of values."
          },
          "isLocalized": {
            "type": "boolean",
            "description": "Indicates if the property supports localization."
          },
          "fieldType": {
            "$ref": "#/components/schemas/DataModelFieldType"
          },
          "referencedEntityTypeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "description": "Optional list of referenced entity type IDs, if the property references other entities.",
            "nullable": true
          },
          "fieldValidations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataModelFieldDefinitionValidation"
            },
            "description": "Optional collection of field validations for the custom property.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a request to create a new custom property for the data model."
      },
      "DataModelCustomPropertyDefinition": {
        "required": [
          "code",
          "fieldType",
          "id",
          "isCollection",
          "isLocalized",
          "modelId",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier for the custom property definition.",
            "format": "uuid"
          },
          "modelId": {
            "type": "string",
            "description": "Identifier of the data model this property belongs to.",
            "format": "uuid"
          },
          "organizationId": {
            "type": "string",
            "description": "Identifier of the organization the custom property belongs to.",
            "nullable": true
          },
          "organizationCode": {
            "type": "string",
            "description": "Code of the organization the custom property belongs to.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "Code of the custom property (unique within the model).",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Display name of the custom property.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Optional description of the custom property.",
            "nullable": true
          },
          "isCollection": {
            "type": "boolean",
            "description": "Indicates if the property is a collection of values."
          },
          "isLocalized": {
            "type": "boolean",
            "description": "Indicates if the property supports localization."
          },
          "fieldType": {
            "$ref": "#/components/schemas/DataModelFieldType"
          },
          "referencedEntityTypeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "description": "Optional list of referenced entity type IDs, if the property references other entities.",
            "nullable": true
          },
          "fieldValidations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataModelFieldDefinitionValidation"
            },
            "description": "Optional collection of field validations for the custom property.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the definition of a custom property for the data model."
      },
      "DataModelCustomPropertyDefinitionCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataModelCustomPropertyDefinition"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DataModelCustomPropertyUpdateRequest": {
        "required": [
          "fieldType",
          "isCollection",
          "isLocalized",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "description": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "isCollection": {
            "type": "boolean",
            "description": "Indicates if the property is a collection of values."
          },
          "isLocalized": {
            "type": "boolean",
            "description": "Indicates if the property supports localization."
          },
          "fieldType": {
            "$ref": "#/components/schemas/DataModelFieldType"
          },
          "referencedEntityTypeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "description": "Optional list of referenced entity type IDs, if the property references other entities.",
            "nullable": true
          },
          "fieldValidations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataModelFieldDefinitionValidation"
            },
            "description": "Optional collection of field validations for the custom property.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a request to update a custom property definition for the data model."
      },
      "DataModelDefinitionV2": {
        "required": [
          "code",
          "createdOn",
          "id",
          "isAggregateRoot",
          "modifiedOn",
          "name",
          "properties"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "description": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "isAggregateRoot": {
            "type": "boolean"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataModelPropertyDefinition"
            },
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "modifiedOn": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Represents a data-model definition contract."
      },
      "DataModelDefinitionV2CollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataModelDefinitionV2"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DataModelFieldDefinitionValidation": {
        "type": "object",
        "oneOf": [
          {
            "$ref": "#/components/schemas/RequiredDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/MinValueDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/MaxValueDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/RangeDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/StringLengthDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/StringMinLengthDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/StringMaxLengthDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/StringRangeLengthDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/RegexDataModelFieldDefinitionValidation"
          },
          {
            "$ref": "#/components/schemas/DecimalPrecisionDefinitionValidation"
          }
        ],
        "properties": {
          "validation": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "discriminator": {
          "propertyName": "validation"
        }
      },
      "DataModelFieldExpressionDefinition": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Expression syntax.",
            "nullable": true
          },
          "order": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Represents a data-model field expression definition contract."
      },
      "DataModelFieldType": {
        "enum": [
          "Text",
          "MultilineText",
          "TwoOptions",
          "WholeNumber",
          "DecimalNumber",
          "UniqueIdentifier",
          "UtcDateTime",
          "LookupEntity",
          "NestedEntity",
          "Date",
          "FileReference",
          "CurrencyNumber",
          "SingleSelectOptionSet",
          "MultiSelectOptionSet"
        ],
        "type": "string",
        "description": "Represents the data-model field-type enumeration."
      },
      "DataModelPropertyDefinition": {
        "required": [
          "code",
          "fieldType",
          "isCollection",
          "isLocalized",
          "isNullable",
          "isPublishedForLookup",
          "name"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "description": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "isPublishedForLookup": {
            "type": "boolean"
          },
          "isCollection": {
            "type": "boolean"
          },
          "isLocalized": {
            "type": "boolean"
          },
          "isNullable": {
            "type": "boolean"
          },
          "fieldType": {
            "$ref": "#/components/schemas/DataModelFieldType"
          },
          "referencedEntityTypeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "expression": {
            "$ref": "#/components/schemas/DataModelFieldExpressionDefinition"
          },
          "fieldValidations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataModelFieldDefinitionValidation"
            },
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a data-model property definition contract."
      },
      "DataProcessingResultItemModel": {
        "required": [
          "changeType",
          "externalId",
          "id",
          "modelId",
          "recordId",
          "resultId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "resultId": {
            "type": "string",
            "description": "The data-processing result identifier.",
            "nullable": true
          },
          "changeType": {
            "$ref": "#/components/schemas/ResultItemChangeType"
          },
          "modelId": {
            "type": "string",
            "description": "The data-model identifier (i.e. the official identifier of data-model in VDM).",
            "nullable": true
          },
          "recordId": {
            "type": "string",
            "description": "The data-record identifier (i.e. the internal identifier of data-record on AVA platform).",
            "nullable": true
          },
          "externalId": {
            "type": "string",
            "description": "The fully-qualified data-record identifier (i.e. the navigation path for data-record combined from the source recordId and the source entityId).",
            "nullable": true
          },
          "referenceId": {
            "type": "string",
            "description": "The reference identifier (i.e. the shared data-record identifier across multiple integration agents).",
            "nullable": true
          },
          "mandantCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a contract of data-processing result item."
      },
      "DataProcessingResultItemModelCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataProcessingResultItemModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DataProcessingResultModel": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "released": {
            "type": "boolean"
          },
          "createdOn": {
            "type": "string",
            "description": "Created on (UTC)",
            "format": "date-time"
          },
          "modifiedOn": {
            "type": "string",
            "description": "Modified on (UTC)",
            "format": "date-time"
          },
          "releasedOn": {
            "type": "string",
            "description": "Released on (UTC)",
            "format": "date-time",
            "nullable": true,
            "readOnly": true
          },
          "sourceId": {
            "type": "string",
            "description": "The data-source identifier of publisher.",
            "nullable": true
          },
          "operationId": {
            "type": "string",
            "description": "The operating-log identifier when the data-processing result has been created.",
            "nullable": true
          },
          "profileId": {
            "type": "string",
            "description": "Gets the integration-profile identifier (i.e. current-profile when processed).",
            "nullable": true
          },
          "scenarioId": {
            "type": "string",
            "description": "The integration-scenario identifier (used in the scope of integration-profile).",
            "nullable": true
          },
          "featureId": {
            "type": "string",
            "description": "The integration-feature identifier (used in the scope of integration-profile).",
            "nullable": true
          },
          "itemsCount": {
            "type": "integer",
            "description": "The number of appended items to the result.",
            "format": "int32"
          },
          "modelIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The collection of model identifiers associated with data-processing result.",
            "nullable": true
          },
          "mandantModels": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MandantModelGroup"
            },
            "description": "The collection of structures representing aggregated model identifiers per mandant code.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a contract of data-processing result."
      },
      "DataProcessingResultModelCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DataProcessingResultModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DecimalPrecisionDefinitionValidation": {
        "required": [
          "maxPrecision"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"DecimalPrecision\"",
            "nullable": true,
            "example": "DecimalPrecision"
          },
          "maxPrecision": {
            "type": "integer",
            "description": "MaxPrecision: Specifies the maximum precision allowed for a decimal input.",
            "format": "int32",
            "example": 2
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a decimal field value has precision not longer than a specified maximum.\nThis validation is suitable for fields with decimal-based data types.\n            \nSupported data model field types:\n- DecimalNumber\n- CurrencyNumber"
      },
      "DefinitionItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The identifier of the item. (optional, auto-generated when not defined)",
            "nullable": true
          },
          "importHash": {
            "type": "string",
            "description": "Hash computed for the import definition of integration-map item.",
            "nullable": true
          },
          "activationKeys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of activation keys.",
            "nullable": true
          },
          "scenarioCode": {
            "type": "string",
            "description": "The integration-scenario code or identifier (optional).",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EdgeDataMappingDirective": {
        "type": "object",
        "properties": {
          "preserveEntityMapping": {
            "type": "boolean",
            "description": "Gets or sets a value indicating whether to preserve and extend entity mapping instead of replace and override. Default is false (i.e. replace)."
          },
          "modelId": {
            "type": "string",
            "description": "Gets the unique identifier for the data-model.",
            "format": "uuid"
          },
          "priority": {
            "type": "integer",
            "description": "Gets or sets the priority of the mapping directive. Default is 0.",
            "format": "int32",
            "nullable": true
          },
          "transformationType": {
            "$ref": "#/components/schemas/EdgeExternalIdTransformationType"
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "Gets or sets the collection of options as key-value pairs.",
            "nullable": true
          },
          "replaceCommonFields": {
            "type": "boolean",
            "description": "Gets or sets a value indicating whether existing common fields will be updated or replaced. Default is false (i.e. updated).",
            "nullable": true
          },
          "replaceCustomFields": {
            "type": "boolean",
            "description": "Gets or sets a value indicating whether existing custom fields will be updated or replaced. Default is false (i.e. updated).",
            "nullable": true
          },
          "mandantCodeIsRequired": {
            "type": "boolean",
            "description": "Gets or sets a value indicating whether the MandantCode is required. Default is false.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a mapping directive of the edge data-source collection/record."
      },
      "EdgeDataRecord": {
        "required": [
          "entityId"
        ],
        "type": "object",
        "properties": {
          "mappingDirectives": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdgeDataMappingDirective"
            },
            "description": "Gets or sets the collection of mapping directives for the edge data-source record.\n\n Important: These directives are applied to this item instead of directives defined at collection level.",
            "nullable": true
          },
          "entityMappingId": {
            "type": "string",
            "description": "Edge data-source entity-mapping identifier (optional, must be unique in SourceId scope).\nWhen defined it is used to choose appropriate data-transformation(s).",
            "nullable": true
          },
          "entityId": {
            "minLength": 1,
            "type": "string",
            "description": "Edge data-source entity identifier (mandatory, must be unique in SourceId scope).\nIt is also used to choose appropriate data-transformation(s) when ASOL.DataService.Edge.Contracts.EdgeDataRecord.EntityMappingId isn't defined."
          },
          "recordId": {
            "type": "string",
            "description": "Edge data-source record identifier (must be unique in EntityId scope).\nCan be null when CustomRecordIdLookup transformation is applied.",
            "nullable": true
          },
          "referenceId": {
            "type": "string",
            "description": "Global reference identifier of record (determines original record in multi-sided updates).\nCan be null when ReferenceId is assigned in transformation.",
            "format": "uuid",
            "nullable": true
          },
          "mandantCode": {
            "type": "string",
            "description": "Represents a mandant identifier. (optional)",
            "nullable": true
          },
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "Collection of key-value pairs (i.e. incoming data-fields) for common properties and their values, i.e. edge-record content.\nNote: can be null when edge-record is flagged as ASOL.DataService.Edge.Contracts.EdgeDataRecord.IsDeleted.\n\nOBSOLETE: Use the <see pref=\"CommonData\" /> property instead.",
            "nullable": true
          },
          "customFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "Collection of key-value pairs (i.e. incoming data-fields) for custom properties and their values, i.e. edge-record content.\nNote: can be null when edge-record is flagged as ASOL.DataService.Edge.Contracts.EdgeDataRecord.IsDeleted.\n\nOBSOLETE: Use the <see pref=\"CustomData\" /> property instead.",
            "nullable": true
          },
          "data": {
            "description": "Incoming data-object for common properties and their values, i.e. edge-record content.\nNote: can be null when edge-record is flagged as ASOL.DataService.Edge.Contracts.EdgeDataRecord.IsDeleted.\n\nOBSOLETE: Use the <see pref=\"CommonData\" /> property instead.",
            "nullable": true
          },
          "commonData": {
            "description": "Incoming data-object for common properties and their values, i.e. edge-record content.\nNote: can be null when edge-record is flagged as ASOL.DataService.Edge.Contracts.EdgeDataRecord.IsDeleted.",
            "nullable": true
          },
          "customData": {
            "description": "Incoming data-object for custom properties and their values, i.e. edge-record content.\nNote: can be null when edge-record is flagged as ASOL.DataService.Edge.Contracts.EdgeDataRecord.IsDeleted.",
            "nullable": true
          },
          "isDeleted": {
            "type": "boolean",
            "description": "Edge data-source record flag if record is deleted (default: false)."
          },
          "utcTimestamp": {
            "type": "string",
            "description": "Edge data-source record timestamp in UTC to track data-changes.",
            "format": "date-time",
            "nullable": true
          },
          "version": {
            "type": "string",
            "description": "Edge data-source record version to ensure data-contract compatibility.",
            "nullable": true
          },
          "customProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "The additional custom properties of data-agents.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the edge data-source record received by data-service."
      },
      "EdgeDataRecordEdgeDataCollection": {
        "type": "object",
        "properties": {
          "mappingDirectives": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdgeDataMappingDirective"
            },
            "description": "Gets or sets the collection of mapping directives for the edge data-source collection.\n\n Important: These directives are applied to all items in this collection unless defined at item level.",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EdgeDataRecord"
            },
            "nullable": true
          },
          "incompleteData": {
            "type": "boolean",
            "description": "Represents flag that this collection is incomplete and will continue."
          },
          "snapshotId": {
            "type": "string",
            "description": "Represents a snapshot identifier.",
            "nullable": true,
            "deprecated": true
          },
          "scenarioId": {
            "type": "string",
            "description": "The integration-scenario identifier.\nNote: used for integration scenarios",
            "nullable": true
          },
          "featureId": {
            "type": "string",
            "description": "The integration-feature identifier.\nNote: used for integration scenarios",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the edge data-source collection of data received by data-service."
      },
      "EdgeExternalIdTransformationType": {
        "enum": [
          "Default",
          "Custom"
        ],
        "type": "string",
        "description": "Represents the source entity mapping transformation type enumeration."
      },
      "EnqueueDataStatus": {
        "enum": [
          "Started",
          "Pending",
          "Completed",
          "Canceled",
          "Running",
          "Success",
          "Failed"
        ],
        "type": "string",
        "description": "Represents the status enumeration for enqueuing data."
      },
      "EnqueueDataStatusModel": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "description": "The data-source identifier.",
            "nullable": true
          },
          "wasSuccess": {
            "type": "boolean",
            "nullable": true,
            "readOnly": true
          },
          "wasFailure": {
            "type": "boolean",
            "nullable": true,
            "readOnly": true
          },
          "errorMessage": {
            "type": "string",
            "description": "Gets error message or null.",
            "nullable": true
          },
          "queueItemId": {
            "type": "string",
            "description": "The queue-item identifier.",
            "nullable": true
          },
          "operationId": {
            "type": "string",
            "description": "The operation identifier.",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "completedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "finishedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/EnqueueDataStatus"
          },
          "itemsCount": {
            "type": "integer",
            "description": "The count of data-objects in the incoming queue-item.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "EnqueueDataStatusSummary": {
        "type": "object",
        "properties": {
          "queueItemId": {
            "type": "string",
            "description": "The queue-item identifier.",
            "nullable": true
          },
          "operationId": {
            "type": "string",
            "description": "The operation identifier.",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "completedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "finishedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/EnqueueDataStatus"
          },
          "itemsCount": {
            "type": "integer",
            "description": "The count of data-objects in the incoming queue-item.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "EnqueueDataStatusSummaryCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EnqueueDataStatusSummary"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IComparable": {
        "type": "object",
        "additionalProperties": false
      },
      "IncludedScenarioModel": {
        "type": "object",
        "properties": {
          "scenarioId": {
            "type": "string",
            "description": "The integration-scenario identifier.",
            "nullable": true
          },
          "scenario": {
            "$ref": "#/components/schemas/IntegrationScenarioBase"
          }
        },
        "additionalProperties": false
      },
      "IntegratedApplicationReference": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The application identifier.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "The application code.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The localized name.",
            "nullable": true
          },
          "isNative": {
            "type": "boolean",
            "description": "The flag if application is native or external (i.e. cloud service or on-premise service)."
          },
          "isOnPremise": {
            "type": "boolean",
            "description": "The flag if application is on-premise installation or cloud service."
          },
          "released": {
            "type": "boolean"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Represents an integrated-application reference contract."
      },
      "IntegrationAgentDetailDefinition": {
        "type": "object",
        "properties": {
          "agentId": {
            "type": "string",
            "description": "The Id of the data agent",
            "format": "uuid"
          },
          "agentCode": {
            "type": "string",
            "description": "The code of data agent",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Flag whether the data agent is enabled or not"
          },
          "description": {
            "type": "string",
            "description": "The Description of data agent",
            "nullable": true
          },
          "customProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "The custom properties",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The data-agent definition of the integration agent."
      },
      "IntegrationAgentFeatureUsageSettings": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "description": "The identifier of the data-source.",
            "nullable": true
          },
          "application": {
            "$ref": "#/components/schemas/IntegratedApplicationReference"
          },
          "supportedFeatures": {
            "$ref": "#/components/schemas/SupportedFeatureModelCollectionResult"
          }
        },
        "additionalProperties": false,
        "description": "The integration agent feature usage settings."
      },
      "IntegrationAgentPatchFeatureUsageModel": {
        "type": "object",
        "properties": {
          "upsert": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SupportedFeature"
            },
            "description": "The supported features to insert or update.",
            "nullable": true
          },
          "remove": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The supported features to remove.\nNote: It precedes upsert, can be combined with Upsert property to remove specified and insert/update upserted ones.",
            "nullable": true
          },
          "removeAll": {
            "type": "boolean",
            "description": "The flag to remove all supported features.\nNote: It precedes upsert, can be combined with Upsert property to remove all and insert upserted ones."
          }
        },
        "additionalProperties": false,
        "description": "Represents contract to patch supported features of the integration agent."
      },
      "IntegrationAgentPatchModel": {
        "type": "object",
        "properties": {
          "agentDefinition": {
            "$ref": "#/components/schemas/IntegrationAgentPatchSettings"
          },
          "sourceDefinition": {
            "$ref": "#/components/schemas/IntegrationSourcePatchSettings"
          }
        },
        "additionalProperties": false,
        "description": "Represents contract to patch settings of the integration agent."
      },
      "IntegrationAgentPatchSettings": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "The Description of data agent",
            "nullable": true
          },
          "customProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "The custom properties",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The definition of data agent registration"
      },
      "IntegrationAgentPatchTransformationModel": {
        "type": "object",
        "properties": {
          "upsert": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationTransformationPatchSettings"
            },
            "description": "The data-transformations to insert or update.",
            "nullable": true
          },
          "remove": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-transformations to remove identified by custom code.\nNote: It precedes upsert, can be combined with Upsert property to remove specified and insert/update upserted ones.",
            "nullable": true
          },
          "removeAll": {
            "type": "boolean",
            "description": "The flag to remove all data-transformations.\nNote: It precedes upsert, can be combined with Upsert property to remove all and insert upserted ones."
          }
        },
        "additionalProperties": false,
        "description": "Represents contract to patch transformations of the integration agent."
      },
      "IntegrationAgentSetStatusModel": {
        "type": "object",
        "properties": {
          "operationId": {
            "type": "string",
            "description": "Operation identifier (optional).",
            "nullable": true
          },
          "isLive": {
            "type": "boolean",
            "description": "The agent is healthy and connected to ASOL platform."
          },
          "isReady": {
            "type": "boolean",
            "description": "The agent is healthy and ready to communicate with 3rd-party application.",
            "nullable": true
          },
          "verboseStatus": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The verbose status.",
            "nullable": true
          },
          "utcTimestamp": {
            "type": "string",
            "description": "The timestamp of status.",
            "format": "date-time"
          },
          "version": {
            "type": "string",
            "description": "The current version of the integrated application / integration agent.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the contract to set status of the integration agent."
      },
      "IntegrationAgentSettingsWithStatus": {
        "type": "object",
        "properties": {
          "agent": {
            "$ref": "#/components/schemas/IntegrationAgentDetailDefinition"
          },
          "source": {
            "$ref": "#/components/schemas/IntegrationSourceDetailDefinition"
          },
          "consumer": {
            "$ref": "#/components/schemas/IntegrationConsumerDetailDefinition"
          }
        },
        "additionalProperties": false,
        "description": "The integration agent settings with status."
      },
      "IntegrationAgentTransformationSettings": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "description": "The identifier of the data-source.",
            "nullable": true
          },
          "transformations": {
            "$ref": "#/components/schemas/IntegrationTransformationPatchSettingsCollectionResult"
          }
        },
        "additionalProperties": false,
        "description": "The integration agent transformation settings."
      },
      "IntegrationConsumerDetailDefinition": {
        "type": "object",
        "properties": {
          "consumerWebhookUrl": {
            "type": "string",
            "description": "The web-hook URL assigned to consumer.",
            "nullable": true
          },
          "consumerCode": {
            "type": "string",
            "description": "Gets or sets the consumer code. (non-updatable)",
            "nullable": true
          },
          "consumerChannel": {
            "type": "string",
            "description": "Gets or sets the consumer channel (e.g. `gRPC`, `Webhook`). (non-updatable)",
            "nullable": true
          },
          "consumerIsConnected": {
            "type": "boolean",
            "description": "Gets or sets a value indicating whether the consumer is connected.",
            "nullable": true
          },
          "consumerStatus": {
            "type": "string",
            "description": "Gets or sets the health-check status of the consumer.",
            "nullable": true
          },
          "rateLimit": {
            "type": "integer",
            "description": "Gets or sets the consumer rate limit. (null = no change)",
            "format": "int32",
            "nullable": true
          },
          "rateLimitInterval": {
            "type": "string",
            "description": "Gets or sets the consumer rate limit interval (e.g. `Second`, `Minute`, `Hour`, `Day`). (null = no change, empty string = remove limit)",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The message gateway consumer definition of the integration agent."
      },
      "IntegrationFeatureAppUsage": {
        "enum": [
          "Input",
          "Output",
          "InputOutput"
        ],
        "type": "string",
        "description": "Represents the usage of integration-feature by integrated-application."
      },
      "IntegrationFeatureReference": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The feature identifier.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "The feature code.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The localized name.",
            "nullable": true
          },
          "released": {
            "type": "boolean"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-feature reference contract."
      },
      "IntegrationMapByAreaDefinition": {
        "type": "object",
        "properties": {
          "areaCode": {
            "type": "string",
            "description": "The code of definition area (invariant).",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DefinitionItem"
            },
            "description": "The item definitions.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-map definition organized by area."
      },
      "IntegrationMapModel": {
        "type": "object",
        "properties": {
          "areaCode": {
            "type": "string",
            "description": "The identifier of definition area.",
            "nullable": true
          },
          "activationKeys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of activation keys to annotate definitions.",
            "nullable": true
          },
          "scenarioId": {
            "type": "string",
            "description": "The integration-scenario identifier.",
            "nullable": true
          },
          "scenario": {
            "$ref": "#/components/schemas/IntegrationScenarioModel"
          },
          "applications": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegratedApplicationReference"
            },
            "description": "The available integrated applications.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "nullable": true
          },
          "released": {
            "type": "boolean"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-map details contract."
      },
      "IntegrationMapModelCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationMapModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IntegrationProfileAppFeatureUsage": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The integration-feature identifier.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "The integration-feature code.",
            "nullable": true
          },
          "usage": {
            "$ref": "#/components/schemas/IntegrationFeatureAppUsage"
          },
          "inputSourceIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-source identifiers used by integration-feature for Input/Input* usage.",
            "nullable": true
          },
          "outputSourceIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-source identifiers used by integration-feature for Output/*Output usage.",
            "nullable": true
          },
          "inputModelIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-model identifiers consumed by integration-feature for Input/InputOutput usage.",
            "nullable": true
          },
          "outputModelIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-model identifiers published by integration-feature for Output/InputOutput usage.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a feature usage contract of integration-profile."
      },
      "IntegrationProfileAppFeatureUsageCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationProfileAppFeatureUsage"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IntegrationProfileAppModelUsage": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The data-model identifier.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "The data-model code.",
            "nullable": true
          },
          "usage": {
            "$ref": "#/components/schemas/IntegrationFeatureAppUsage"
          },
          "inputSourceIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-source identifiers used by integration-feature for Input/Input* usage.",
            "nullable": true
          },
          "outputSourceIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-source identifiers used by integration-feature for Output/*Output usage.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a data-model usage contract of integration-profile."
      },
      "IntegrationProfileAppModelUsageCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationProfileAppModelUsage"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IntegrationProfileItemModel": {
        "type": "object",
        "properties": {
          "keys": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of used activation keys.",
            "nullable": true
          },
          "dataSourceId": {
            "type": "string",
            "description": "The data-source identifier representing instance of integrated application.",
            "nullable": true
          },
          "applicationId": {
            "type": "string",
            "description": "The integrated-application identifier.",
            "nullable": true
          },
          "application": {
            "$ref": "#/components/schemas/IntegratedApplicationReference"
          },
          "scenarioId": {
            "type": "string",
            "description": "The integration-scenario identifier.",
            "nullable": true
          },
          "scenario": {
            "$ref": "#/components/schemas/IntegrationScenarioReference"
          },
          "featureId": {
            "type": "string",
            "description": "The integration-feature identifier.",
            "nullable": true
          },
          "feature": {
            "$ref": "#/components/schemas/IntegrationFeatureReference"
          },
          "featureUsage": {
            "$ref": "#/components/schemas/IntegrationFeatureAppUsage"
          },
          "inputSourceIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-source identifiers used by integration-feature for Input/Input* usage.",
            "nullable": true
          },
          "outputSourceIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-source identifiers used by integration-feature for Output/*Output usage.",
            "nullable": true
          },
          "inputModelIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-model identifiers consumed by integration-feature for Input/InputOutput usage.",
            "nullable": true
          },
          "outputModelIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The data-model identifiers published by integration-feature for Output/InputOutput usage.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-profile item contract."
      },
      "IntegrationProfileModel": {
        "type": "object",
        "properties": {
          "isSelected": {
            "type": "boolean",
            "description": "Flag representing the current integration-profile."
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationProfileItemModel"
            },
            "description": "The profile items.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "nullable": true
          },
          "released": {
            "type": "boolean"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-profile details contract."
      },
      "IntegrationProfileModelCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationProfileModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IntegrationScenarioBase": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The scenario identifier.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "The scenario code.",
            "nullable": true
          },
          "importHash": {
            "type": "string",
            "description": "Hash computed for the import definition of integration-scenario.",
            "nullable": true
          },
          "name": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "description": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "released": {
            "type": "boolean"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-scenario base contract."
      },
      "IntegrationScenarioModel": {
        "type": "object",
        "properties": {
          "inputFeatureId": {
            "type": "string",
            "description": "The input integration-feature identifier.",
            "nullable": true
          },
          "inputFeature": {
            "$ref": "#/components/schemas/IntegrationFeatureReference"
          },
          "outputFeatureId": {
            "type": "string",
            "description": "The output integration-feature identifier.",
            "nullable": true
          },
          "outputFeature": {
            "$ref": "#/components/schemas/IntegrationFeatureReference"
          },
          "includedScenarios": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IncludedScenarioModel"
            },
            "description": "The included integration-scenarios.",
            "nullable": true
          },
          "id": {
            "type": "string",
            "description": "The scenario identifier.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "The scenario code.",
            "nullable": true
          },
          "importHash": {
            "type": "string",
            "description": "Hash computed for the import definition of integration-scenario.",
            "nullable": true
          },
          "name": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "description": {
            "$ref": "#/components/schemas/StringLocalizedValue"
          },
          "released": {
            "type": "boolean"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-scenario details contract."
      },
      "IntegrationScenarioReference": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The scenario identifier.",
            "nullable": true
          },
          "code": {
            "type": "string",
            "description": "The scenario code.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "The localized name.",
            "nullable": true
          },
          "released": {
            "type": "boolean"
          },
          "deleted": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Represents an integration-scenario reference contract."
      },
      "IntegrationSourceDetailDefinition": {
        "type": "object",
        "properties": {
          "sourceId": {
            "type": "string",
            "description": "The identifier of the data source",
            "format": "uuid"
          },
          "sourceCode": {
            "type": "string",
            "description": "The code of the data source",
            "nullable": true
          },
          "applicationCode": {
            "type": "string",
            "description": "The code of the application",
            "nullable": true
          },
          "enabled": {
            "type": "boolean",
            "description": "Flag whether the data source is enabled in current tenant or not"
          },
          "isRegistered": {
            "type": "boolean",
            "description": "Flag if data-source is registered in current tenant or not (null means that status not resolved).",
            "nullable": true
          },
          "consumerCode": {
            "type": "string",
            "description": "The code of the consumer",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "The data-source description.",
            "nullable": true
          },
          "customProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "The custom properties.",
            "nullable": true
          },
          "consumerType": {
            "$ref": "#/components/schemas/MessageGatewayClientType"
          },
          "consumerWebhookUrl": {
            "type": "string",
            "description": "The web-hook URL assigned to data-source.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The data-source definition of the integration agent."
      },
      "IntegrationSourcePatchSettings": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "The data-source description.",
            "nullable": true
          },
          "customProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "The custom properties.",
            "nullable": true
          },
          "consumerType": {
            "$ref": "#/components/schemas/MessageGatewayClientType"
          },
          "consumerWebhookUrl": {
            "type": "string",
            "description": "The web-hook URL assigned to data-source.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The definition of data source integration"
      },
      "IntegrationTransformationPatchSettings": {
        "type": "object",
        "properties": {
          "customCode": {
            "type": "string",
            "description": "The invariant code of data-transformation (i.e. custom identifier).\nThe code is unique per data-source.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "The data-transformation description.",
            "nullable": true
          },
          "mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SourceEntityMapping"
            },
            "description": "Collection of the model-mappings defined in the data-transformation.",
            "nullable": true
          },
          "customProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "The additional custom properties of data-transformation.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The definition of data transformation integration"
      },
      "IntegrationTransformationPatchSettingsCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IntegrationTransformationPatchSettings"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "JObjectCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": { },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MandantModelGroup": {
        "type": "object",
        "properties": {
          "mandantCode": {
            "type": "string",
            "description": "The mandant identifier",
            "nullable": true
          },
          "modelIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A collection of aggregated model Ids per mandant.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "A contract representing structure for grouping model Ids by mandant."
      },
      "MaxValueDataModelFieldDefinitionValidation": {
        "required": [
          "maximum"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"MaxValue\"",
            "nullable": true,
            "example": "MaxValue"
          },
          "maximum": {
            "$ref": "#/components/schemas/IComparable"
          },
          "maximumIsExclusive": {
            "type": "boolean",
            "description": "MaximumIsExclusive: If true, the value must be strictly less than the maximum.\nIf false, the maximum value itself is allowed.",
            "example": false
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a data model field value is not greater than a specified maximum.\nThis validation is suitable for fields with numeric or date-based data types.\n            \nSupported data model field types:\n- WholeNumber\n- DecimalNumber\n- UtcDateTime\n- Date"
      },
      "MessageGatewayClientType": {
        "enum": [
          "None",
          "Grpc",
          "Webhook"
        ],
        "type": "string",
        "description": "Represents the client type for message gateway."
      },
      "MinValueDataModelFieldDefinitionValidation": {
        "required": [
          "minimum"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"MinValue\"",
            "nullable": true,
            "example": "MinValue"
          },
          "minimum": {
            "$ref": "#/components/schemas/IComparable"
          },
          "minimumIsExclusive": {
            "type": "boolean",
            "description": "MinimumIsExclusive: If true, the value must be strictly greater than the minimum.\nIf false, the minimum value itself is allowed.",
            "example": false
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a data model field value is not less than a specified minimum.\nThis validation is suitable for fields with numeric or date-based data types.\n            \nSupported data model field types:\n- WholeNumber\n- DecimalNumber\n- UtcDateTime\n- Date"
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "RangeDataModelFieldDefinitionValidation": {
        "required": [
          "maximum",
          "minimum"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"Range\"",
            "nullable": true,
            "example": "Range"
          },
          "minimum": {
            "$ref": "#/components/schemas/IComparable"
          },
          "minimumIsExclusive": {
            "type": "boolean",
            "description": "MinimumIsExclusive: If true, values must be strictly greater than the minimum.\nIf false, the minimum value itself is allowed.",
            "example": false
          },
          "maximum": {
            "$ref": "#/components/schemas/IComparable"
          },
          "maximumIsExclusive": {
            "type": "boolean",
            "description": "MaximumIsExclusive: If true, values must be strictly less than the maximum.\nIf false, the maximum value itself is allowed.",
            "example": false
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures data model field values fall within a specified range.\nThis validation is suitable for fields with numeric or date-based data types.\n            \nSupported data model field types:\n- WholeNumber\n- DecimalNumber\n- UtcDateTime\n- Date"
      },
      "RegexDataModelFieldDefinitionValidation": {
        "required": [
          "pattern"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"Regex\"",
            "nullable": true,
            "example": "Regex"
          },
          "pattern": {
            "type": "string",
            "description": "Pattern: The regular expression pattern that input must match.",
            "nullable": true,
            "example": "^[A-Z]{2}\\d{4}$"
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a text field value matches a specified regular expression pattern.\nThis validation is suitable for fields with text-based data types.\n            \nSupported data model field types:\n- Text"
      },
      "RequiredDataModelFieldDefinitionValidation": {
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"Required\"",
            "nullable": true,
            "example": "Required"
          },
          "allowEmptyStrings": {
            "type": "boolean",
            "description": "AllowEmptyStrings: If true, empty strings are considered valid for text fields when required.\nIf false, empty strings are treated as missing values.",
            "example": false
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a data model field contains a value.\nThis validation applies broadly across most data types, including text, numbers, identifiers, dates, lookups, files, and option sets.\n            \nSupported data model field types:\n- Text\n- MultilineText\n- TwoOptions\n- WholeNumber\n- DecimalNumber\n- UniqueIdentifier\n- UtcDateTime\n- LookupEntity\n- NestedEntity\n- Date\n- FileReference\n- CurrencyNumber\n- SingleSelectOptionSet\n- MultiSelectOptionSet"
      },
      "ResultItemChangeType": {
        "enum": [
          "Created",
          "Updated",
          "Deleted"
        ],
        "type": "string",
        "description": "Represents the change-type of data-processing result item."
      },
      "SourceAggregateFunction": {
        "enum": [
          "None",
          "Count",
          "Min",
          "Max",
          "Sum",
          "Avg",
          "First",
          "Last"
        ],
        "type": "string",
        "description": "Represents the source field mapping aggregate function enumeration."
      },
      "SourceConsumerMessagesSettings": {
        "type": "object",
        "properties": {
          "rateLimit": {
            "type": "integer",
            "description": "Gets or sets the consumer rate limit. (null = no change)",
            "format": "int32",
            "nullable": true
          },
          "rateLimitInterval": {
            "type": "string",
            "description": "Gets or sets the consumer rate limit interval (e.g. `Second`, `Minute`, `Hour`, `Day`). (null = no change, empty string = remove limit)",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents the source consumer messages settings contract."
      },
      "SourceConsumerSettings": {
        "type": "object",
        "properties": {
          "settings": {
            "$ref": "#/components/schemas/SourceConsumerMessagesSettings"
          },
          "enqueueDataStatus": {
            "type": "boolean",
            "description": "The flag to enable/disable 'ASOL.DataService.EnqueueDataStatusChanged' message type (null = no change).",
            "nullable": true
          },
          "dataModelCustomPropertyStatus": {
            "type": "boolean",
            "description": "The flag to enable/disable 'ASOL.DataService.DataModelCustomPropertyChanged' message type (null = no change).",
            "nullable": true
          },
          "integrationDataChanges": {
            "type": "boolean",
            "description": "The flag to enable/disable 'ASOL.DataService.IntegrationDataChanged' message type with multi-tenant filter (null = no change).",
            "nullable": true
          },
          "integrationProfileStatus": {
            "type": "boolean",
            "description": "The flag to enable/disable 'ASOL.DataService.IntegrationProfileChangeStarted' and 'ASOL.DataService.IntegrationProfileChangeCompleted' message types (null = no change).",
            "nullable": true
          },
          "dataRecordChanges": {
            "type": "boolean",
            "description": "The flag to enable/disable 'ASOL.DataService.RecordCreated', 'ASOL.DataService.RecordUpdated' and 'ASOL.DataService.RecordDeleted' message types with multi-tenant filter (null = no change).\nOBSOLETE - use IntegrationDataChanges instead.",
            "nullable": true,
            "deprecated": true
          },
          "refreshSourceConfig": {
            "type": "boolean",
            "description": "The flag to enable/disable 'ASOL.DataService.RefreshSourceConfig' message type (null = no change).",
            "nullable": true
          },
          "refreshSourceStatus": {
            "type": "boolean",
            "description": "The flag to enable/disable 'ASOL.DataService.RefreshSourceStatus' message type (null = no change).",
            "nullable": true
          },
          "resetTenants": {
            "type": "boolean",
            "description": "The flag to replace(=true) all existing tenant filters or add/remove(=false) current tenant filter for message types with multi-tenant filter."
          }
        },
        "additionalProperties": false,
        "description": "Represents a source consumer settings contract."
      },
      "SourceEntityMapping": {
        "type": "object",
        "properties": {
          "entityMappingId": {
            "type": "string",
            "description": "Gets or sets the entity-mapping identifier.",
            "nullable": true
          },
          "entityId": {
            "type": "string",
            "nullable": true
          },
          "priority": {
            "type": "integer",
            "description": "Gets or sets the model mapping priority (ascending order, default = 0).",
            "format": "int32"
          },
          "entityOwnership": {
            "$ref": "#/components/schemas/SourceEntityOwnership"
          },
          "modelId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "nullable": true
          },
          "transformationType": {
            "$ref": "#/components/schemas/SourceExternalIdTransformationType"
          },
          "autoMapCommonFields": {
            "type": "boolean",
            "description": "Flag to define implicit field-mappings for common properties (for data-types supporting this feature)."
          },
          "autoMapCustomFields": {
            "type": "boolean",
            "description": "Flag to define implicit field-mappings for custom properties (for data-types supporting this feature)."
          },
          "mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SourceFieldMapping"
            },
            "description": "Explicit common field-mappings defined on the data-source model-mapping level.",
            "nullable": true
          },
          "customMappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SourceFieldMapping"
            },
            "description": "Explicit custom field-mappings defined on the data-source model-mapping level.",
            "nullable": true
          },
          "expressions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SourceEntityMappingExpression"
            },
            "description": "Expression fields defined on the data-source model mapping level.",
            "nullable": true
          },
          "predicate": {
            "$ref": "#/components/schemas/SourceMappingPredicate"
          },
          "isSupplementary": {
            "type": "boolean",
            "description": "Flag to determine if entity-model mapping is supplementary or primary. (default = false)",
            "deprecated": true
          },
          "customProperties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "description": "The additional custom properties of data-source entity mapping.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a source entity mapping contract."
      },
      "SourceEntityMappingExpression": {
        "required": [
          "fieldName"
        ],
        "type": "object",
        "properties": {
          "fieldName": {
            "minLength": 1,
            "type": "string",
            "description": "Field name."
          },
          "value": {
            "type": "string",
            "description": "Expression syntax.",
            "nullable": true
          },
          "predicate": {
            "type": "string",
            "description": "Predicate syntax.",
            "nullable": true
          },
          "post": {
            "type": "boolean",
            "description": "Flag if expression is evaluated during pre-processing or post-processing of input row. (default: false)"
          }
        },
        "additionalProperties": false,
        "description": "Represents a source entity mapping expression contract."
      },
      "SourceEntityOwnership": {
        "type": "object",
        "properties": {
          "tenantIdColumnName": {
            "type": "string",
            "description": "Gets or sets the column-name of input-data representing TenantId.",
            "nullable": true
          },
          "tenantIdIsRequired": {
            "type": "boolean",
            "description": "Gets or sets the flag if TenantId is required or optional (default)."
          },
          "mandantCodeColumnName": {
            "type": "string",
            "description": "Gets or sets the column-name of input-data representing MandantCode.",
            "nullable": true
          },
          "mandantCodeIsRequired": {
            "type": "boolean",
            "description": "Gets or sets the flag if MandantCode is required or optional (default)."
          }
        },
        "additionalProperties": false,
        "description": "Represents a source entity tenant/mandant ownership contract."
      },
      "SourceExternalIdTransformationType": {
        "enum": [
          "Default",
          "Custom"
        ],
        "type": "string",
        "description": "Represents the source entity mapping transformation type enumeration."
      },
      "SourceFieldMapping": {
        "required": [
          "sourceFieldName",
          "targetFieldName"
        ],
        "type": "object",
        "properties": {
          "sourceFieldName": {
            "type": "string"
          },
          "targetFieldName": {
            "minLength": 1,
            "type": "string"
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringObjectKeyValuePair"
            },
            "nullable": true
          },
          "transformationType": {
            "$ref": "#/components/schemas/SourceFieldTransformationType"
          },
          "expression": {
            "$ref": "#/components/schemas/SourceFieldMappingExpression"
          },
          "predicate": {
            "$ref": "#/components/schemas/SourceMappingPredicate"
          },
          "mappings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SourceEntityMapping"
            },
            "description": "Get a collection of nested model mappings.",
            "nullable": true
          },
          "aggregateFunction": {
            "$ref": "#/components/schemas/SourceAggregateFunction"
          }
        },
        "additionalProperties": false,
        "description": "Represents a source field mapping contract."
      },
      "SourceFieldMappingExpression": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Expression syntax.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a source field mapping expression contract."
      },
      "SourceFieldTransformationType": {
        "enum": [
          "Default",
          "NestedMapping",
          "Expression",
          "NestedObjectMapping"
        ],
        "type": "string",
        "description": "Represents the source field mapping transformation type enumeration."
      },
      "SourceMappingPredicate": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Predicate syntax.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Represents a source mapping predicate contract."
      },
      "StringLengthDataModelFieldDefinitionValidation": {
        "required": [
          "length"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"StringLength\"",
            "nullable": true,
            "example": "StringLength"
          },
          "length": {
            "type": "integer",
            "description": "Length: Specifies the exact required number of characters for the text input.",
            "format": "int32",
            "example": 5
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a string field value has an exact length.\nThis validation is suitable for fields with text-based data types.\n            \nSupported data model field types:\n- Text\n- MultilineText"
      },
      "StringLocalizedValue": {
        "type": "object",
        "properties": {
          "values": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StringLocalizedValueItem"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StringLocalizedValueItem": {
        "type": "object",
        "properties": {
          "locale": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StringMaxLengthDataModelFieldDefinitionValidation": {
        "required": [
          "maxLength"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"StringMaxLength\"",
            "nullable": true,
            "example": "StringMaxLength"
          },
          "maxLength": {
            "type": "integer",
            "description": "MaxLength: Specifies the maximum number of characters allowed for a text input.",
            "format": "int32",
            "example": 10
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a string field value is not longer than a specified maximum length.\nThis validation is suitable for fields with text-based data types.\n            \nSupported data model field types:\n- Text\n- MultilineText"
      },
      "StringMinLengthDataModelFieldDefinitionValidation": {
        "required": [
          "minLength"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"StringMinLength\"",
            "nullable": true,
            "example": "StringMinLength"
          },
          "minLength": {
            "type": "integer",
            "description": "MinLength: Specifies the minimum number of characters required for a text input.",
            "format": "int32",
            "example": 1
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a string field value is not shorter than a specified minimum length.\nThis validation is suitable for fields with text-based data types.\n            \nSupported data model field types:\n- Text\n- MultilineText"
      },
      "StringObjectKeyValuePair": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StringRangeLengthDataModelFieldDefinitionValidation": {
        "required": [
          "maxLength",
          "minLength"
        ],
        "type": "object",
        "properties": {
          "validation": {
            "type": "string",
            "description": "Discriminator: \"StringRangeLength\"",
            "nullable": true,
            "example": "StringRangeLength"
          },
          "minLength": {
            "type": "integer",
            "description": "MinLength: Specifies the minimum allowed length for a text input.",
            "format": "int32",
            "example": 1
          },
          "maxLength": {
            "type": "integer",
            "description": "MaxLength: Specifies the maximum length allowed for a text input.",
            "format": "int32",
            "example": 10
          }
        },
        "additionalProperties": false,
        "description": "Represents a validation that ensures a string field value length falls within a specified range.\nThis validation is suitable for fields with text-based data types.\n            \nSupported data model field types:\n- Text\n- MultilineText"
      },
      "SupportedFeature": {
        "type": "object",
        "properties": {
          "featureCode": {
            "type": "string",
            "description": "The integration-feature code or identifier.",
            "nullable": true
          },
          "featureUsage": {
            "$ref": "#/components/schemas/IntegrationFeatureAppUsage"
          }
        },
        "additionalProperties": false
      },
      "SupportedFeatureModel": {
        "type": "object",
        "properties": {
          "applicationUsage": {
            "$ref": "#/components/schemas/IntegrationFeatureAppUsage"
          },
          "featureUsage": {
            "$ref": "#/components/schemas/IntegrationFeatureAppUsage"
          },
          "featureId": {
            "type": "string",
            "description": "The integration-feature identifier.",
            "nullable": true
          },
          "feature": {
            "$ref": "#/components/schemas/IntegrationFeatureReference"
          }
        },
        "additionalProperties": false
      },
      "SupportedFeatureModelCollectionResult": {
        "type": "object",
        "properties": {
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SupportedFeatureModel"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "oauth2": {
        "type": "oauth2",
        "flows": {
          "password": {
            "authorizationUrl": "https://demo.avaplace.com/api/asol/idp/connect/authorize",
            "tokenUrl": "https://demo.avaplace.com/api/asol/idp/connect/token",
            "refreshUrl": "https://demo.avaplace.com/api/asol/idp/connect/token",
            "scopes": {
              "apiim": ""
            }
          }
        }
      }
    }
  }
}